我必须为MsFlexGrid对象调用click事件。
Private Sub MSFlexGridboxcodelist_Click()
box_code = Trim(Me.MSFlexGridboxcodelist.TextMatrix(Me.MSFlexGridboxcodelist.RowSel, 1))
box_type = Trim(Me.MSFlexGridboxcodelist.TextMatrix(Me.MSFlexGridboxcodelist.RowSel, 7))
Me.Txtpack_weight.text = Trim(Me.MSFlexGridboxcodelist.TextMatrix(Me.MSFlexGridboxcodelist.RowSel, 5))
Dim x As Integer
For x = 0 To Me.Combobox_type.ListCount - 1
If Me.Combobox_type.List(x) = box_type Then
Me.Combobox_type.ListIndex = x
Exit For
End If
Next
End Sub问题是,当我实际单击flexgrid时,此部分按其应有的方式工作:
Me.Combobox_type.ListIndex = x但是当我这样做的时候:
Me.MSFlexGridboxcodelist.row = i
Me.MSFlexGridboxcodelist.TopRow = i
Me.MSFlexGridboxcodelist.RowSel = i
For x = 0 To Me.MSFlexGridboxcodelist.cols - 1
Me.MSFlexGridboxcodelist.ColSel = x
Next x
Call MSFlexGridboxcodelist_Click组合框中所需的项未被选中。所以我猜这是点击事件和调用点击事件之间的区别,但我不知道是什么。我知道我可以将combobox的文本设置为我想要的任何内容,但是不应该允许用户这样做,所以我将它的style属性设置为Dropdown list。
你们能给我小费吗?
提前谢谢。
发布于 2012-09-12 20:29:15
通过鼠标单击将调用多个事件(其中一些事件可能不会在VB6中公开)。单击事件代码将作为其中一个事件的一部分运行。调用Grid.Click()不会模拟鼠标单击。
不确定第二段代码要做什么?设置ColSel将选择.Col和.ColSel之间的列,因此循环将设置不断增加的选择大小。事实上,它会选择每一列,所以为什么要麻烦呢?
为什么不将click事件更改为遍历检索文本的列呢?
https://stackoverflow.com/questions/12387985
复制相似问题