msflexgrid表格中打对钩表示选定
如题设计第一列为打对钩表示选定此行,并在第一列的空白地方显示出一个对钩
Private Sub Hflexgrid_MouseDown(Button As Integer, Shift As Integer, X As Single, y As Single)
On Error GoTo Err_Proc
Dim intCurrCol As Long
intCurrCol = HFlexgrid.Col
'单击选择或不选择
If HFlexgrid.TextMatrix(HFlexgrid.Row, 0) = "√" Then
HFlexgrid.TextMatrix(HFlexgrid.Row, 0) = ""
'改变行颜色
For i_Col = 0 To HFlexgrid.Cols - 2
HFlexgrid.Col = i_Col
HFlexgrid.CellBackColor = vbWhite
Next i_Col
Else
HFlexgrid.TextMatrix(HFlexgrid.Row, 0) = "√"
'改变行颜色
For i_Col = 0 To HFlexgrid.Cols - 2
HFlexgrid.Col = i_Col
HFlexgrid.CellBackColor = &H80C0FF
Next i_Col
End If
HFlexgrid.Col = intCurrCol
Exit Sub
'错误处理
Err_Proc:
MsgBox "操作失败,错误原因为:" & Err.Description, vbExclamation, "提示"
Exit Sub
End Sub
Private Sub Form_Load()直接Spread 多省事儿
MSFlexGrid1.Cols = 10
MSFlexGrid1.Rows = 10
MSFlexGrid1.FixedCols = 0
MSFlexGrid1.FixedRows = 0
End Sub
Private Sub MSFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
'On Error GoTo Err_Proc
Dim intCurrCol As Long
intCurrCol = MSFlexGrid1.Col
'单击选择或不选择
If MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = "√" Then
MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = ""
'改变行颜色
For i_Col = 0 To MSFlexGrid1.Cols - 2
MSFlexGrid1.Col = i_Col
MSFlexGrid1.CellBackColor = vbWhite
Next i_Col
Else
MSFlexGrid1.TextMatrix(MSFlexGrid1.Row, 0) = "√"
'改变行颜色
For i_Col = 0 To MSFlexGrid1.Cols - 2
MSFlexGrid1.Col = i_Col
MSFlexGrid1.CellBackColor = &H80C0FF
Next i_Col
End If
MSFlexGrid1.Col = intCurrCol
Exit Sub
End Sub
求下载地址或发我邮箱,100分全部送上
393832637@qq.com 看来其它人白忙活了
不会 不会 我知道的 感谢你了 问题已初步解决了,不过没用你写的代码。
补充:VB , 基础类