2024-04-18 18:58:45 发布
网友
我正在将我的Visual Basic 6程序移植到PyQt。
我需要调用一个函数来设置一些小部件一直启用/禁用,我不想调用一个函数太多次,所以我发现了一个事件,当焦点从一个小部件更改为另一个小部件时,我可以调用我的小部件管理器函数。
我在PyQt找同样的东西,但是没有成功。知道吗?
信号^{}就是你想要的。
不确定您所说的是小部件的窗口获得/失去焦点,还是嵌入到另一个键盘获得/失去焦点中的小部件,但是这两种情况都适用
class MyWidget(QtGui.QWidget): def __init__(self, parent = None): super(MyWidget, self).__init__(parent) self.installEventFilter(self) def eventFilter(self, object, event): if event.type() == QtCore.QEvent.WindowActivate: print "widget window has gained focus" elif event.type()== QtCore.QEvent.WindowDeactivate: print "widget window has lost focus" elif event.type()== QtCore.QEvent.FocusIn: print "widget has gained keyboard focus" elif event.type()== QtCore.QEvent.FocusOut: print "widget has lost keyboard focus" return False
信号^{} 就是你想要的。
不确定您所说的是小部件的窗口获得/失去焦点,还是嵌入到另一个键盘获得/失去焦点中的小部件,但是这两种情况都适用
相关问题 更多 >
编程相关推荐