Sto cercando di mettere a fuoco una finestra se l'utente fa clic su un'altra finestra.PyQt Window Focus
In questo momento ho due finestre: la finestra A è dietro e la finestra B è davanti. Quando appare finestra B, disabilita Finestra A. Ora quello che voglio è che ogni volta che l'utente fa clic al di fuori della finestra B, si dovrebbe dare attenzione torna alla finestra B.
Ecco il codice per la finestra 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()
ho cercato setFocus
e activateWindow
, ma non ha ancora dare attenzione torna alla finestra B.
Qualche suggerimento?
Volete questo comportamento rispetto a tutte le altre finestre o solo per Window A. Se vuoi il secondo puoi rendere Window B una finestra modale http://en.wikipedia.org/wiki/Modal_window. La Finestra B è quindi un elemento secondario della Finestra A che in seguito non può essere focalizzata fintanto che la Finestra B è aperta. – halex