Создание полноэкранного окна Qt, прозрачного для ввода - PullRequest
0 голосов
/ 11 февраля 2020

Я хотел бы создать в PyQt5 полноэкранное окно, которое всегда находится сверху и прозрачно для ввода: то есть щелчки проходят через него, как будто его там нет, и он не может сфокусироваться.

При использовании очень простой c программы:

import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtCore import Qt

if __name__ == '__main__':
    app = QApplication(sys.argv)
    w = QWidget()
    w.setWindowFlags(Qt.WindowTransparentForInput)
    w.showFullScreen()
    sys.exit(app.exec_())

это не удается. Если я не установлю Qt.WindowTransparentForInput, то он работает нормально; окно полноэкранное, как и ожидалось. Конечно, он перехватывает щелчки. Добавление Qt.WindowTransparentForInput означает, что окно больше не станет полноэкранным; это появляется в некотором случайном размере. Точно так же windows с установленным Qt.WindowTransparentForInput не отвечает должным образом на метод resize(). Как я могу иметь окно, которое является прозрачным для ввода в размере и положении, которое я запрашиваю?

...