请教高手:如何在MSFlexGrid控件中显示复选框

解决方案 »

  1.   

    Option Explicit'  初始化界面
    Private Sub Form_Load()
        Dim i As Integer
        With MSFlexGrid1
            .Cols = 6
            .Rows = 10
            For i = 0 To 9
                .RowHeight(i) = 300
            Next i
            .TextMatrix(0, 0) = "学号\科目"
            .TextMatrix(0, 1) = "数学"
            .TextMatrix(0, 2) = "语文"
            .TextMatrix(0, 3) = "英语"
            .TextMatrix(0, 4) = "政治"
            .TextMatrix(0, 5) = "历史"
            .TextMatrix(1, 0) = "0201001"
            .TextMatrix(2, 0) = "0201002"
            .TextMatrix(3, 0) = "0201003"
            .TextMatrix(4, 0) = "0201004"
            .TextMatrix(5, 0) = "0201005"
            .TextMatrix(6, 0) = "0201006"
            .TextMatrix(7, 0) = "0201007"
            .TextMatrix(8, 0) = "0201008"
            .TextMatrix(9, 0) = "0201009"
        End With
        Label1.Caption = "在选中项双击或单击回车可选择MSFlexGrid" & vbCr & _
                         "而按下Esc键则取消输入..."
    End Sub'  双击表格时,显示check用于选择
    Private Sub MSFlexGrid1_DblClick()
        Dim c As Integer, r As Integer
        With MSFlexGrid1
            c = .Col: r = .Row
                Check1.Left = .Left + .ColPos(c)
                Check1.Top = .Top + .RowPos(r)
                Check1.Width = .ColWidth(c)
                Check1.Height = .RowHeight(r)
    '            Check1 = .Text
                Check1.Visible = True
                Check1.SetFocus
        End With
    End Sub'  单击回车键时,实现和双击鼠标相同的处理
    Private Sub MSFlexGrid1_KeyPress(KeyAscii As Integer)
        If KeyAscii = vbKeyReturn Then
            Call MSFlexGrid1_DblClick
        End If
    End Sub
      

  2.   

    可以试试用两个图片,一个是选中的,一个是未选中的,然后付给MSFlexGrid1
    的单元格
      

  3.   

    http://community.csdn.net/Expert/topic/3094/3094680.xml?temp=.5235712怎么又发了一个~~~