作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个列表控制框,我用数据填充它。
self.listView1.Append([sFilename,sTitle,sArtist,sAlbum,sDestDir])
我创建了一个事件,当用户单击列表中的特定项目时触发
def OnListView1ListItemSelected(self, event):
print "onListViewSelect"
这可行,但我所困惑的是如何从用户单击的列表中捕获单行数据?
最佳答案
使用 wxPython 2.8.10,这是将所选行中所有列中的文本拖放到列表中的一种方法。您将获取对象、选定的索引、列数,然后从每列中获取文本:
def onListView1ListItemSelected(self, event):
obj = event.GetEventObject()
index = event.GetIndex()
columns = obj.GetColumnCount()
data = []
for i in range(columns):
item = obj.GetItem(index, i)
data.append(item.GetText())
print(data)
我提到这个版本是因为我认为最新的 wxPython 版本允许您在 wx.ListCtrl.GetItemText 中指定一列,这可以稍微简化一些事情。不过我还没试过。
关于python - 如何从 wxpython gui 单击事件获取列表数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4992963/
我是一名优秀的程序员,十分优秀!