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

投稿日: 2002/12/07(Sat) 23:08
投稿者ぼくのタイプ
Eメール
URL
タイトルMSFlexGridで複数選択

MSFlexGridで複数選択をしたくて以下のものを書きました。
このままでは、マウスクリックを二度行わないと反転表示されません。
一度目のクリックの時に何故反応しないのでしょうか?

'MSFlexGrid1のプロパティ
'アクティブセル=1-Left
'選択モード=1-By Row
Private Sub MSFlexGrid1_Click()
    Label1.Caption = MSFlexGrid1.Col 'test
    If MSFlexGrid1.CellBackColor = vbWhite Then
        Call Change_RowColor(QBColor(15), QBColor(3)) 'ForeColor,BackColor
    Else
        Call Change_RowColor(QBColor(0), QBColor(15))
    End If
End Sub
Private Sub MSFlexGrid1_MouseMove(Button As --中略--, y As Single)
    Dim iNowPos As Integer
    MSFlexGrid1.ColSel = MSFlexGrid1.Cols - 1
    If MSFlexGrid1.MouseRow <> iBeforeMousePos Then
        If MSFlexGrid1.MouseRow = 0 Then
            iNowPos = 1
        Else
            iNowPos = MSFlexGrid1.MouseRow
            MSFlexGrid1.Row = iNowPos
            MSFlexGrid1.Col = 0
            iBeforeMousePos = iNowPos
        End If
    End If
End Sub
Private Sub Change_RowColor(sForeColor As String, sBackColor As String)
    Dim i As Integer
        For i = MSFlexGrid1.FixedCols To MSFlexGrid1.Cols - 1
           MSFlexGrid1.Col = i
           MSFlexGrid1.CellBackColor = sBackColor 'QBColor(15)
           MSFlexGrid1.CellForeColor = sForeColor 'QBColor(0)
        Next i
End Sub


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

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

- Web Forum -