我想重点放在一个窗口,如果用户点击另一个窗口。PyQt窗口焦点
现在,我有两个窗口:窗口A落后,和Window B是在前面。当窗口出现b,它禁用窗口A.现在我想的是,每当用户点击窗口B的范围外,应该把焦点返回到窗口B.
这里是窗口B中的代码:
class window_b(QtGui.QDialog):
def __init__(self,parent=None):
super(window_b, self).__init__(parent)
window_a.setEnabled(False)
self.ui = Ui_Form_window_b()
self.ui.setupUi(self)
self.setFocusPolicy(QtCore.Qt.StrongFocus)
def focusOutEvent(self,event):
self.setFocus(True)
self.activateWindow()
self.raise_()
self.show()
我试图setFocus
和activateWindow
,但它没有把焦点返回到窗口B.
有什么建议?
您希望这种行为对于所有其他窗口或只对窗口A.如果你想要后者,你可以使窗口B成为模态窗口http://en.wikipedia.org/wiki/Modal_window。然后,窗口B是窗口A的子窗口,只要窗口B打开,窗口B就不能被聚焦。 – halex