gpt4 book ai didi

python - PyQt 窗口焦点

转载 作者:太空狗 更新时间:2023-10-29 21:22:43 25 4
gpt4 key购买 nike

如果用户点击另一个窗口,我试图将焦点放在一个窗口上。

现在我有两个窗口:窗口 A 在后面,窗口 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()

我尝试了 setFocusactivateWindow,但它没有将焦点返回到窗口 B。

有什么建议吗?

最佳答案

要让 window_b 始终保持在顶部,您必须添加 windowflag QtCore.Qt.WindowStaysOnTopHint。在你的 __init__ 添加调用

self.setWindowFlags(PyQt4.QtCore.Qt.WindowStaysOnTopHint)

我必须补充一点,这只是对窗口管理器的提示,并不保证一定会成功。

关于python - PyQt 窗口焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12280815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com