wx.button点击事件传参
时间: 2023-08-18 08:19:55 浏览: 253
点击事件分发
在wxPython中,可以通过lambda表达式将参数传递给按钮的点击事件。具体步骤如下:
1. 创建一个按钮对象
```
btn = wx.Button(parent, label="Click me")
```
2. 绑定按钮的点击事件
```
btn.Bind(wx.EVT_BUTTON, self.on_button_click)
```
3. 定义按钮点击事件的处理函数
```
def on_button_click(self, event):
# 通过lambda表达式将参数传递给处理函数
param1 = "hello"
param2 = "world"
func = lambda: self.do_something(param1, param2)
wx.CallAfter(func)
```
4. 在处理函数中使用传递的参数
```
def do_something(self, param1, param2):
print(param1, param2)
```
在上面的代码中,我们使用lambda表达式将参数param1和param2传递给了do_something函数,并使用wx.CallAfter方法异步地调用这个函数。这样可以避免在处理函数中阻塞UI线程。
阅读全文