从 wxtreeCtrl 获取选定的项目
你应该如何在wxTreeCtrl
中选择项目?我将方法绑定到激活的项目,如下所示:
self.tree.Bind (wx.EVT_TREE_ITEM_ACTIVATED, self.OnAdd, id=10)
在方法 OnAdd
中,我尝试获取该项目:
def OnAdd(self, event):
item = event.GetItem()
但它给出错误,表明事件没有 GetItem()
方法。有什么想法吗?
更新:
我分配了一个按钮事件来处理所选项目。 这就是为什么该活动没有附加项目的原因。
How should you get the item selected in wxTreeCtrl
? I bind the method to the activated item like this:
self.tree.Bind (wx.EVT_TREE_ITEM_ACTIVATED, self.OnAdd, id=10)
And in the method OnAdd
I try to get the item:
def OnAdd(self, event):
item = event.GetItem()
But it gives error that event has no GetItem()
method. Any idea?
UPDATE:
I had assigned a button event to process selected item.
So that's why the event had not item attached to it..
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您错误地绑定了回调。您当前所做的:
但第三个参数是
源
;id
是第四个参数。因此,将其更改为:这样,您将在
OnAdd
函数中获得的event
参数将是tree
实例,该实例将具有GetItem
方法可用。完整示例:
You are binding the callback incorrectly. You currently do:
But the 3rd parameter is the
source
;id
is the 4th parameter. So, change it to this:This way, the
event
argument you will get in yourOnAdd
function will be thetree
instance, which will have theGetItem
method available.Full example:
只是我的 2 美分:
两天来我一直在寻找 C++/wxWidgets 的相同解决方案。
我发现了一个非常好的工作示例:
我将 Codeblocks 与 wxSmith(RAD 工具)一起使用。 Ubuntu Bionic
从 Windows 进行 Ssh &&出口展示&& Codeblocks
这是此特定事件的代码...
youtube 上的工作示例
just my 2cents:
I've been looking for the same solution with C++/wxWidgets for 2 days.
I found a really good working example:
I use Codeblocks with wxSmith(RAD tool). Ubuntu Bionic
Ssh from windows && export display && Codeblocks
And here's the code for this specific Event...
Working example on youtube