VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2005/10/22(Sat) 13:37
投稿者水無月
Eメール
URL
タイトルRe: MSFlexgridの表示方法

使い方を見ますと、チェックボックスを1つクリックするとグリッドの全ての行をチェックして
色づけの動作を行っているように見えますが…
これはForm_Loadの時だけ行い、後はクリックした行の色付けだけでいいのではないのでしょうか?
1行の色付けであれば瞬時に終わりますが…

Private Sub Check1_Click(Index As Integer)
    With MSFlexgrid1
    ' 16カラム目へフラグを立てる
         .Row = .TopRow + Index - 1
         .TextMatrix(.Row, 16) = Check1(Index).Value '16列目に書き込む
         .Visible = False '非表示にする
         If .TextMatrix(.Row, 16) = "1" Then '16列目が1なら色付け
              For i = .FixedCol to .Cols - 1
                  .Col = i
                  .CellBackColor = vbRed
              Next
         Else
              For i = .FixedCol to .Cols - 1
                  .Col = i
                  .CellBackColor = &H80000005&
              Next
         End If
         .Visible = True '表示を戻す
    End With
End Sub


おまけですが、グリッドのRowHeightMinプロパティをデフォルトの255から300程度に変えると表示ス
ピードが上がります。(遅いマシンでは有効でした)


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -