【DO!BOOK・ページリンク】
2008_migaro_techreport_001   115 / 136

BOOKをみる

10秒後にBOOKのページに移動します


113 4.DBGridの 簡単ソートの実装 DBGrid の明細に対して、マウス クリックで並び替えができます か? DBGrid のOnTitleClick イベン トで、表のタイトルをクリックし た際の処理を制御することができる。  ClientDataSet 経由でDBGrid にデータ を表示していることが前提である。ここで、 ClientDataSet のindex を操作すること で、画面上からクリックするだけのソート 機能を実装することができる。【図5】 Q. A. 図5 実装イメージ  この仕組みでは、DBGrid のタイトルを クリックするだけで、@で昇順・Aで降順・ Bで解除、という操作を想定している。ま た、この仕組みはフィールド単位でIndex 操作を行うため、複数のフィールドを昇順 や降順で組み合わせて扱うこともできる。  この@.BのDBGrid の、タイトルク リックイベントのソース実装例を示す。 【ソース3】 ・Index の削除と再追加  ソースの最後に、Index の削除と再追加 を行っている。これはパフォーマンス維持 のためである。  操作したIndex は通常、ClientDataSet を再度Open した際に反映される。データ 量によってはアクセスに時間がかかり、 ソートでクリックするたびに時間がかかっ てしまうため、操作性が悪くなる。  例のように、Index を一度削除して再度 追加を行う手法であれば、ClientDataSet をClose せずにソート内容を画面に反映さ せることができる。