假如下面的图是MSHFlexGrid控件,比如双击一下第1行或第2行,msgbox ””你单击了” & MSHFlexGrid.row”
可是,我双击空白处的地方,还是会显示*你单击了第2 行的提示*
希望哪位高手,能帮帮忙.双击空白处的地方,不响应任何事件.
还有如何使MSHFlexGrid的失去焦点,谢谢!
--------------------------|
1 AAAAAAAAAAAAAAAAAAAAAAA|
--------------------------|
2 BBBBBBBBBBBBBBBBBBBBBBB|
--------------------------|
空白空白空白空白空白空白空白空|
空白空白空白空白空白空白空白空|
--------------------------|
可是,我双击空白处的地方,还是会显示*你单击了第2 行的提示*
希望哪位高手,能帮帮忙.双击空白处的地方,不响应任何事件.
还有如何使MSHFlexGrid的失去焦点,谢谢!
--------------------------|
1 AAAAAAAAAAAAAAAAAAAAAAA|
--------------------------|
2 BBBBBBBBBBBBBBBBBBBBBBB|
--------------------------|
空白空白空白空白空白空白空白空|
空白空白空白空白空白空白空白空|
--------------------------|
Private Sub MSHFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
Dim i As Integer
Dim iX As Integer
Dim iY As Integer
With MSHFlexGrid1
iX = MSHFlexGrid1.ColWidth(1) * .Cols
iY = MSHFlexGrid1.RowHeight(i) * .Rows
If x > iX Or y > iY Then
.Row = 0
.RowSel = 0
.Col = 0
.ColSel = 0
End If
End With
End Sub
Dim c As Integer, r As Integer
With MSFlexGrid1
c = .Col
r = .Row
If c > -1 And r > -1 Then
MsgBox r
End If
End With
End Sub
有个缺点,双击0行与第1行都是1,要上班了,没时间了
P = False
End SubPrivate Sub MSHFlexGrid1_DblClick()
With MSHFlexGrid1
If P Then MsgBox .Row
End With
End SubPrivate Sub MSHFlexGrid1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
With MSHFlexGrid1
If y > .RowPos(.Rows - 1) + .RowHeight(.Rows - 1) Then P = False Else P = True
End With
End Sub
在chuifengde的帮助下,问题已解决!谢谢!