我想让一个 PyQT4 窗口(QtGui.QMainWindow
)在应用程序收到来自另一台机器的指定消息时跳转到最前面。
通常窗口会最小化。
我尝试了 raise_()
和 show()
方法,但它不起作用。
最佳答案
这个有效:
# this will remove minimized status
# and restore window with keeping maximized/normal state
window.setWindowState(window.windowState() & ~QtCore.Qt.WindowMinimized | QtCore.Qt.WindowActive)
# this will activate the window
window.activateWindow()
我在 Win7 上都需要。
setWindowState
恢复最小化窗口并提供焦点。但是,如果窗口只是失去焦点而不是最小化,它就不会获得焦点。
activateWindow
提供焦点但不恢复最小化状态。
同时使用两者具有预期的效果。
关于python - 如何让PyQT4窗口跳到最前面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12118939/