簡體   English   中英

如何將自定義事件添加到 PyQt5 事件循環

[英]How to add a custom event to a PyQt5 Event loop

我正在嘗試添加一個事件,該事件在 window 處於非活動狀態時觸發(- 用戶的鼠標已單擊另一個應用程序或桌面)。 在閱讀了很多官方文檔之后,我仍然迷路了。 我也希望通過其他行動來做到這一點,但這將是第一步。

您必須使用每次 QWindow 更改時發出的activeChanged信號 state 和isActive()指示它是否處於活動狀態:

import sys

from PyQt5 import QtWidgets


app = QtWidgets.QApplication(sys.argv)

w = QtWidgets.QWidget()
w.show()

qwindow = w.windowHandle()

if qwindow is not None:

    def handle_activeChanged():
        print("isActive? {}".format(qwindow.isActive()))

    qwindow.activeChanged.connect(handle_activeChanged)

sys.exit(app.exec_())

暫無
暫無

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

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