wxpython - EVT_BUTTON 在帧加载时触发
问题描述
我的应用程序有 2 个框架。通过按下第一帧上的按钮,我可以自由地从第一帧转到第二帧。出于某种原因,当我加载第二帧 EVT_BUTTON 时,我将其绑定到其按钮触发器之一。更糟糕的是,当我在第二帧中单击它时它不会触发。我是 python 和 wx 库的新手,但到目前为止它非常简单,现在我有点卡住了。
class ItemInfo(wx.Frame):
def __init__(self, parent, item, *args):
super(ItemInfo, self).__init__(parent)
self.Centre()
# self.Size = wx.Size(500, 900)
self.current_item = self.find_current_item(item)
#I skipped several boxsizers in this snipped
test_button = wx.Button(self, label="Test")
self.Bind(wx.EVT_BUTTON, self.show_current_item_stats(), test_button)
button_sizer = wx.BoxSizer(wx.HORIZONTAL)
button_sizer.Add(test_button, wx.ID_ANY, wx.ALIGN_CENTER)
self.main_sizer = wx.BoxSizer(wx.VERTICAL)
self.main_sizer.Add(button_sizer, wx.ID_ANY, wx.EXPAND)
self.SetSizer(self.main_sizer)
def show_current_item_stats(self):
self.current_item.stat_bonuses["Strength"] += 510
self.current_item_strength_bonus.SetLabel(f"Strength: {self.current_item.stat_bonuses['Strength']}")
'''
解决方案
好像我不小心通过添加 () 来调用函数,而不是仅仅绑定它。傻我+)
推荐阅读
- azure - 我是否必须向 Azure 中的 Linux VM 提供 SSH 密钥或名称/密码?
- r - 带有图例的 R 哑铃图,无法对 y 轴进行排序
- android - 有人有适用于 Android 的 Spotify Streaming SDK 源吗?
- angularjs - 使用angularjs在一定数量的数字后插入连字符
- python - 找不到页面错误。我是使用该框架进行 Web 开发的新手
- c# - 如何在 Bot Framework 的测试函数中访问用户和对话数据
- vb.net - 如何为组合框列表项分配隐藏值?名称值对?
- loops - Google Apps 脚本 - 仍在努力循环遍历行
- c# - 在 ASP.Net Core 3.0 中使用表单添加到模型的 IList
- oracle - Oracle 数据库可以像使用 sqlite 一样在内存中创建吗?