Q&A

  • 디비그리드에서 정렬은?
디비그리드에서 특정한 필드로정렬하고 싶습니다.

원하는 필드를 클릭했을경우 이름순으로 정렬하고 싶으면 어떻게 하면 되나요?

2  COMMENTS
  • Profile
    안정한 2000.04.01 04:21
    다음과 같이 사용하면 동적으로 정렬을 시킬 수 있을 겁니다.



    아니면 이 곳 QA게시판에 DBGRID 동적으로 Index만들기를 참고하세요

    procedure TForm1.FormCreate(Sender: TObject);

    begin

    DBGrid1.Options := [dgTitles,dgIndicator,dgColLines,

    dgRowLines,dgTabs,dgConfirmDelete,dgCancelOnExit];

    end;



    procedure TForm1.DBGrid1TitleClick(Column: TColumn);

    begin

    Query1.SQL[1] := Column.FieldName;

    Query1.Close;

    Query1.Open;

    end;



    procedure TForm1.FormShow(Sender: TObject);

    begin

    with Query1 do begin

    Close;

    SQL.Clear;

    SQL.Add('SELECT * FROM CUSTOMER ORDER BY ');

    SQL.Add('CUSTNO');

    Open;

    end;

    end;



  • Profile
    하얀까마귀 2000.04.01 03:34
    안녕하세요 하얀까마귀 입니다.



    디비 그리드에서 정렬은 안됩니다.



    정렬을 하고 싶으시면 연결된 Table이나 쿼리에서 하셔야 합니다..



    쿼리는 sql문의 order by로 하시고



    talbe 은 해당 테이블의 인덱스를 생성해서 그 인덱스를 선택해 주면 됩니다..



    그럼 즐거운 시간 되세요..



    - 하얀까마귀 -



    델초. wrote:

    > 디비그리드에서 특정한 필드로정렬하고 싶습니다.

    > 원하는 필드를 클릭했을경우 이름순으로 정렬하고 싶으면 어떻게 하면 되나요?