MSFlexGridで列の一番上をクリックすると並び替えができるように
(アウトルックで受信日時や送信先で並びかえれるみたいな感じ)
したいのですが、方法としてはクリックイベントで.Rowがゼロの時を
見て、それにあわせて表を再表示させるしかないのでしょうか。
ちなみに表のデータはCSVファイルを呼んで表示させています。
プロパティか何かで簡単にできるようでしたら教えてください。
宜しくお願いします。
環境はWindows2000でVB6SP5です。
再表示ってかSortプロパティがあります。
それじゃダメですか?
私がよく使うのはコマンドボタンを配置しますね。それにフラグを立てれば外見はアウトルックみたいになりますよ。
編集 削除下記ではだめですか?
Private Sub MSHFlexGrid1_Click()
With MSHFlexGrid1
If .Col = 0 And .Row = 1 And .MouseRow = 0 Then
If .TextMatrix(0, 0) = "項目名 ▲" Then
.TextMatrix(0, 0) = "項目名 ▼"
.Sort = 7 'flexSortGenericAscending
Else
.TextMatrix(0, 0) = "項目名 ▲"
.Sort = 8 'flexSortGenericDescending
End If
End If
'以下同様に必要な列だけ追加
End With
End Sub
Grid操作は
挿入、行入れ替え、行追加、行挿入すべて再表示でやっていますが
まったく’スピード的にも無問題です。