【问题标题】:wxPython dialogs: "Enter" keyboard button would not "ok" the dialogwxPython 对话框:“Enter”键盘按钮不会“确定”对话框
【发布时间】:2010-10-27 11:36:47
【问题描述】:

我正在通过子类化wx.Dialog 创建一个自定义 wxPython 对话框。当我在使用它时按 Enter 键(并且专注于其中一个表单元素时),它只会将焦点转移到下一个表单元素,而我希望它按下确定按钮。

我该如何解决这个问题?

【问题讨论】:

    标签: python keyboard wxpython


    【解决方案1】:

    如果按钮具有 wx.ID_OK id,这应该会自动发生。如果这是不可能的,那么 wx.StdDialogBu​​ttonSizer.SetAffirmativeButton() 方法可能是一个解决方案(使用 StdDialogBu​​ttonSizer 类将有助于在不同平台上正确放置和定位按钮),还有wx.Button.SetDefault()

    【讨论】:

    • 我把id设置为wx.ID_OK,好像没什么影响。我寻找 SetAffirmativeButton(在对话框中),似乎不存在。有SetAffirmativeId,在按钮的ID上试了一下,还是不行。
    • 为了最好地符合不同平台的 UI 指南,您应该使用具有该方法的 wx.StdDialogBu​​ttonSizer;见wxpython.org/docs/api/wx.StdDialogButtonSizer-class.html
    • 还有wx.Button.SetDefault()... 反正你是在什么平台上,对话框里还有什么其他控件?
    • button.SetDefault() 是你想要的。
    • 我尝试了这里列出的所有方法,唯一对我有用的是button.SetDefault()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-15
    • 2012-05-06
    • 1970-01-01
    • 2019-01-30
    • 2013-06-18
    • 1970-01-01
    • 2011-03-02
    相关资源
    最近更新 更多