python - WxPython 对 ComboBox-Selection 的特定选择执行操作

标签 python wxpython

如果选择了组合框的特定条目并且组合框失去焦点,我不想执行操作。

我知道如何通过

调用处理程序
 self.Bind(wx.EVT_COMBOBOX, self.__HandlerForComboBox, mycombobox)

但问题是: 如果用户通过向上/向下箭头单击组合框选择,他将传递该元素并执行操作。因此,我考虑将此处理程序与诸如 looseFocus(仅特定的 ComboBox)之类的内容结合起来,并且仅当选择了 ComboBox 中的特定选项并且用户通过单击来输入该选项时才会执行该操作组合框或单击制表符可离开此框。

如何做到这一点?

最佳答案

在您的HandlerForComboBox中,只需设置一个标志来表明您的特定条目已被选择。像这样的东西应该有效:

if self.cbo.GetValue() == 'special value':
    self.special_entry = True
else:
    self.special_entry = False

然后在焦点事件处理程序中,您只需检查 self.special_entry 是否为 True 并采取相应的操作。

关于python - WxPython 对 ComboBox-Selection 的特定选择执行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31668737/

相关文章:

python - 从 MySQL 查询设置 CheckListBox

python - 框架内的框架 WxPython

python - 用于访问 Pandas 中的列的括号表示法和点表示法之间的速度差异

python - 如何用Python实现EXCEL的查找功能

python - 如何在构造函数中设置 ElementTree 元素文本字段

Python/wxPython : Importing CSV file onto wxGrid not displaying to fit on frame

python - 如何使用wxPython通过在透明背景上拖动鼠标来选择要捕获的屏幕矩形?

python - wxPython 复选框 true 或 false

python - 如何比较 csv 中的这些数据集? Python 2.7

python - 使用 python 子进程通过管道传输很长的字符串