Private Sub MSHFlexGrid1_Click()
If MSHFlexGrid1.Col = 0 Then MSHFlexGrid1.Text = Chr(124 - Asc(MSHFlexGrid1.Text))
End Sub
Private Sub Form_Load()
Dim i As Long
With MSHFlexGrid1
.FixedCols = 0
.Cols = 4
.TextArray(0) = "Flag"
.TextArray(1) = "i"
.TextArray(2) = "i^2"
.TextArray(3) = "i^3"
For i = 1 To 50
.AddItem vbTab & i & vbTab & i ^ 2 & vbTab & i ^ 3
Next
.RemoveItem 1
For i = 1 To 50
.Row = i
.Col = 0
.CellFontName = "Wingdings 2"
.Text = Chr(IIf(i Mod 2 = 0,82,42))
Next
End With
End Sub
Another method:
Option Explicit
Dim strChecked As String
Private Sub Form_Load()
Dim i As Variant,ms_rows As Integer
' Start building the Grid
ms_rows = 20 ' This is the number of rows to print out
With MSFlexGrid1
.Row = 0
.Col = 0
.Rows = ms_rows + 1 'We add 1 to ensure we get all the rows
.Cols = 2
.ColWidth(0) = 250 ' CheckBox column
.ColWidth(1) = 1440 ' Index column
End With
' Now build the Grid
For i = 0 To 20 'm_rows - 1
With MSFlexGrid1
.Row = i: .Col = 0: .CellPictureAlignment = 4 ' Align the checkBox
Set .CellPicture = picUnchecked.Picture ' Set the default checkBox picture to the empty Box
.TextMatrix(i,1) = i
End With
Next
End Sub
Private Sub MSFlexGrid1_Click()
Dim oldx,oldy,cell2text As String,strTextCheck As String
' Check or uncheck the grid checkBox With MSFlexGrid1 oldx = .Col oldy = .Row If MSFlexGrid1.Col = 0 Then If MSFlexGrid1.CellPicture = picChecked Then Set MSFlexGrid1.CellPicture = picUnchecked .Col = .Col + 1 ' I use data that is in column #9,usually an Index or ID # strTextCheck = .Text strChecked = Replace(strChecked,strTextCheck & ",","") Debug.Print strChecked Else Set MSFlexGrid1.CellPicture = picChecked .Col = .Col + 1 strTextCheck = .Text strChecked = strChecked & strTextCheck & "," Debug.Print strChecked End If End If .Col = oldx .Row = oldy End With End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。