お知らせ

電子会議

ライブラリ

FDelphi サイト全文検索

Delphi FAQ一覧

サンプル蔵



FDelphi FAQ
15番会議室「FAQ編纂委員会」に寄せられた「よくある質問の答え」

[Q]
StringGrid で,指定のカラムに入力されている内容で行をソートしたい。

[A]
下記のようなメソッドを作り、呼び出してやります。

Procedure GridSort(Grid : TStringGrid;SortCol : LongInt);
var
   St, St2 : TStringList;
   i : Integer;
begin
     St := TStringList.Create;
     ST.Assign(Grid.Cols[SortCol]);
     For i := 1 To Grid.FixedRows Do
        St.Delete(0);
     For i := Grid.FixedRows To Grid.RowCount - 1 Do
     Begin
                                            St2 := TStringList.Create;
       St2.Assign(Grid.Rows[i]);
       St.Objects[i - Grid.FixedRows] := St2;
     End;
     St.Sort;
     For i := Grid.FixedRows To Grid.RowCount - 1 Do
     Begin
        Grid.Rows[i].Assign(TStringList(St.Objects[i - Grid.FixedRows]));
        TStringList(St.Objects[i - Grid.FixedRows]).Free;
     End;
     St.Free;
end;

呼び出す時は、

    GridSort(StringGrid1, 2); //2カラム目でソート


ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum FDELPHIに寄せられる質問の中から、よくある質問への回答を FDELPHIのメンバーがまとめたものです。 したがって、これらの回答はボーランド株式会社がサポートする公式のものではなく、掲示されている内容についての問い合わせは受けられない場合があります。

Copyright 1996-1998 Delphi Users' ForumFAQ編纂委員会