【问题标题】:wxPython: Find the focused wxTextCtrl?wxPython:找到焦点所在的 wxTextCtrl?
【发布时间】:2014-12-01 06:51:37
【问题描述】:

我是 wxPython 的新手并尝试了一些示例。我正在使用 wxFormBuilder 创建一个带有许多 wxTextCtrl 的简单 GUI。我想确定光标的当前位置,它在其中一个 wxTextCtrl 中并做一些操作。我该怎么做呢?请帮忙!

【问题讨论】:

    标签: python focus wxpython


    【解决方案1】:

    尝试使用 wx.Frame 的FindFocus() 方法。那应该返回具有焦点的小部件。

    另见:

    【讨论】:

    • 我昨天试过了。这是我正在做的事情: if self.MainWindow.FindFocus() == self.Var1: self.Var1.SetFocus() 其中,MainWindow 是主 GUI 窗口Var1 是 wxTextCtrl 之一。但这不起作用。有什么建议吗?
    • Var1 有焦点,如果有,你设置焦点?什么不起作用?也许创建一个小的示例应用程序,我们可以运行以提供更好的帮助。
    • 是的,我知道正常情况下如果Var1已经有了焦点,就不用去检查它是否有焦点了。但是我使用了很多 *.show()*.hide() 函数来隐藏和显示一些选项,因为 Var1正在失去焦点。所以我需要找出 Var1 之前是否有焦点并将焦点返回给它。我将尝试提供一个示例,但同时还有其他建议吗?
    • 您可以使用像self.last_focus 这样的变量,并使用它来跟踪哪个小部件最后获得焦点。这将使在显示/隐藏后重新设置焦点变得容易得多
    • 将适当的小部件绑定到 EVT_SET_FOCUS 并在调用该事件时更新变量。然后,您可以使用该信息以及小部件是否可见来帮助您确定要设置焦点的小部件。
    猜你喜欢
    • 1970-01-01
    • 2016-07-26
    • 1970-01-01
    • 2011-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-28
    相关资源
    最近更新 更多