Q&A

  • 스트링그리드에서 마우스로 FixedRow를 선택하면 어떤 열이 선택됐는지...
스트링그리드에서 고정열을 마우스로 선택하면 그열을 기준으로

소트가 돼도록 만들도록 싶습니다.

어떻게 하면 돼죠?



소스는 다음과 같습니다.

Procedure Form10.StringGridClick(Sender: TObject);

begin

if StringGrid.Row=0 then

SortStringGrid(StringGrid,StringGrid.Col,False);

end;



위에서 StringGrid.Row=1 하면 Sort~가 실행되는데....

StringGrid.Row=0 하면 아무런 반응이 없습니다.

1  COMMENTS
  • Profile
    신인재 1999.08.05 20:26
    클릭이벤트 핸들러는 FixedRow에서 발생한 마우스동작에서 발생하지 않습니다.



    Mouseup 이벤트 핸들러에서 작업을 하셔야 됩니다.



    procedure TForm1.StringGrid1MouseUp(Sender: TObject; Button: TMouseButton;

    Shift: TShiftState; X, Y: Integer);

    var

    Column, Row: Longint;

    begin

    StringGrid1.MouseToCell(X, Y, Column, Row);

    StringGrid1.Cells[Column, Row] := 'Col ' + IntToStr(Column) +

    ',Row ' + IntToStr(Row);

    end;



    이런식으로 하면 fixed에 관계없이 Row의 값을 알수 있습니다.





    곽승주 께서 말씀하시기를...

    > 스트링그리드에서 고정열을 마우스로 선택하면 그열을 기준으로

    > 소트가 돼도록 만들도록 싶습니다.

    > 어떻게 하면 돼죠?

    >

    > 소스는 다음과 같습니다.

    > Procedure Form10.StringGridClick(Sender: TObject);

    > begin

    > if StringGrid.Row=0 then

    > SortStringGrid(StringGrid,StringGrid.Col,False);

    > end;

    >

    > 위에서 StringGrid.Row=1 하면 Sort~가 실행되는데....

    > StringGrid.Row=0 하면 아무런 반응이 없습니다.