簡體   English   中英

如何在PyQt中激活應用程序窗口

[英]How to activate application window in PyQt

我試圖設置窗口標志:

self.setWindowFlags(QtCore.Qt.FramelessWindowHint | QtCore.Qt.WindowStaysOnTopHint)

它工作正常,但事件keyPressEvent不會觸發。 在我激活窗口(ALT + TAB)之后,事件開始並起作用。

順便說一句,我試圖通過調用以下事件來激活窗口: self.activateWindow()但它對我不起作用。

如何解決?

完整代碼:

def show(self):
    geometry = QtGui.QApplication.desktop().screenGeometry()
    self.setFixedSize(geometry.width(), geometry.height())
    self.setWindowFlags(self.windowFlags() | QtCore.Qt.WindowStaysOnTopHint | QtCore.Qt.FramelessWindowHint)
    self.setWindowOpacity(.3)
    self.setStyleSheet("background: 'black'")

    self.raise_()
    self.show()

def keyPressEvent(self, e):
    key = e.key()
    if key == QtCore.Qt.Key_Escape:
        self.close()

謝謝。

您應該嘗試的第一件事是:

self.setFocus(QtCore.Qt.PopupFocusReason)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM