在 PySide2 中使用 QVideoWidget(尽管 python 部分可能并不重要)。我已经使用 QShortcut 设置了我的热键,一切都很好。当我按“F”进入全屏模式时,它也可以工作,但是我不能离开。我的热键或鼠标事件处理程序都不起作用。我最终陷入全屏模式。
有没有办法让它在全屏模式下也能响应?我是否以错误的方式创建热键?
这个例子演示了这个问题:
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self._fullscreen = False
self.movie_display = QVideoWidget(self)
self.movie_handler = QMediaPlayer()
self.movie_handler.setVideoOutput(self.movie_display)
layout = QVBoxLayout()
layout.addWidget(self.movie_display)
self.setLayout(layout)
QShortcut(QKeySequence(QtConsts.Key_F), self, self.toggle_fullscreen)
s = 'test.webm'
s = os.path.join(os.path.dirname(__file__), s)
local = QUrl.fromLocalFile(s)
media = QMediaContent(local)
self.movie_handler.setMedia(media)
self.movie_handler.play()
def toggle_fullscreen(self):
self._fullscreen = not self._fullscreen
self.movie_display.setFullScreen(self._fullscreen)