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

投稿日: 2005/10/21(Fri) 14:40
投稿者フック
Eメール
URL
タイトルMSFlexgridの表示方法

MSFlexgridの表示方法についてなのですが
期待動作の仕組みを説明します。

現在MSFlexgridにチェックボックスが貼り付けられています。
顧客管理のシステムなのですが、チェックボックスを貼り付け使っています。
削除などの項目を指定するためです。
ソートも使うため、ソート用のカラムを増やし、1か0でフラグを立てON OFFを判定しています。

困っている内容は
チェックボックスをONしたときに、一行に色を付けたいのですが期待通りの動作ができません。

Private Sub Check1_Click(Index As Integer)
    With MSFlexgrid1
    ' 16カラム目へフラグを立てる
        .TextMatrix(.TopRow + Index - 1, 16) = Check1(Index).value
        
     ' glbUserIdCount はデータベースのレコードカウントです。
     For i = 0 To glbUserIdCount 
            
      ' ここから色を付ける処理
      If .TextMatrix(i, 16) = "1" Then
            ' カーソルを移動して1セルづつ色を付けていく。
          ' 動作的、見た目は一応これでOKなのですが、しかし、あまりにも遅く実用は
無理です。
                    .RowSel = i
                    .ColSel = 15
                    For j = 0 To 15
                        .Row = i: .Col = j:
                        .CellBackColor = vbRed
                    Next
            Else
                    .RowSel = i
                    .ColSel = 15
                    For j = 0 To 15
                        .Row = i: .Col = j:
                        .CellBackColor = vbWhite
                    Next
            End If
     Next
    End With
End Sub

ここのHPの MSFlexGridの主要プロパティ一覧表 を参照し色々な組み合わせてを試しているのです
が、やはり期待通りの動作ができません。
どのようにすれば、高速で同じ動作が実現できるのでしょうか?
どうか、よろしくお願いします。


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

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

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