| 作者 | 主题 |
|---|---|
|
洪流 新手 经验值:49 发帖数:10 精华帖:0 |
楼主
主题:请教斑竹,用VBS怎样获得listview控件内鼠标点击的内容?
如题,我查了关于VB与VBS有关于listview控件的内容,还是未能实现,请高手指点,
做事必须持之以恒!!!
但并非一定成功!!!
|
|
Olli 游民 经验值:58 发帖数:12 精华帖:2 |
楼
主题:回复:请教斑竹,用VBS怎样获得listview控件内鼠标点击的内容?
首先要搞清楚ListView控件各列项目的关系,ListView控件中第一列的项目是主项,其余列的项都是第一列的子项,列数是子项数加一。所以说参数ObjectItem指向的是第一列,也就是主项。要获取其他列的内容,就是要获取ObjectItem的子项。下面有个简单的例子:
' 先在open picture时添加内容 Sub Open() Dim obj Set obj = ScreenItems("MyListView") obj.ColumnHeaders.Add , "Name", "Name" obj.ColumnHeaders.Add , "Gender", "Gender" obj.ColumnHeaders.Add , "Age", "Age" Dim item Set item = obj.ListItems.Add(1, "ZS", "Zhang San") item.SubItems(1) = "male" item.SubItems(2) = "19" Set item = obj.ListItems.Add(1, "LS", "Li Si") item.SubItems(1) = "female" item.SubItems(2) = "20" Set item = Nothing Set obj = Nothing End Sub ' ListView控件的ItemClick事件 Sub ItemClick(ByVal Item, ByRef ObjectItem) Dim strItem strItem = "Line" & ObjectItem.Index & ": " strItem = strItem & ObjectItem.Text & vbTab & vbTab strItem = strItem & ObjectItem.SubItems(1) & vbTab strItem = strItem & ObjectItem.SubItems(2) & vbLf HMIRuntime.Trace(strItem) End Sub ps: 不爽的是ColumnHeaders的SubItemIndex属性不被支持,所以不能根据列名来索引了,只能用序号。 |