我的问题是如何退出全屏。我制作了一个如下设置的程序:
class Ui_MainWindow(object):
def UI:
some random ui stuff
self.fullscreenbutton.clicked.connect(self.fullscreen)
def vid(self):
self.Video_Player = QtMultimediaWidgets.QVideoWidget(self.centralWidget)
self.Video_Player.setObjectName("videoPlayer")
self.horizontalLayout_4.addWidget(self.Video_Player)
self.Video_Player.show()
self.player = QtMultimedia.QMediaPlayer()
self.player.setMedia(QMediaContent(QUrl.fromLocalFile(self.filePath)))
self.player.setVideoOutput(self.Video_Player)
self.player.play()
def fullscreen(self):
self.Video_Player.setFullscreen(True)
无论如何,我如何使用按键事件退出全屏。我知道如何进行按键事件,但是由于代码设置的方式我似乎无法使它们工作(因此上面给出了非常粗略的布局)。
我正在运行Windows 7,python 3.5,PyQt5。
P.S。很抱歉没有提供完整的代码,这是一个学校作业,如果在网上找到代码,可能很难证明它是我的。
答案 0 :(得分:1)
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
self.Video_Widget=Video_Widget_Class()
self.horizontalLayout_4.addWidget(self.Video_Widget)
class Video_Widget_Class(QVideoWidget):
def Video_Widget(self):
self.Video_Player = QtMultimediaWidgets.QVideoWidget(self.centralWidget)
self.Video_Player.setObjectName("videoPlayer")
self.Video_Player.show()
def keyPressEvent(self, event):
if event.key() == Qt.Key_Escape and self.isFullScreen():
self.setFullScreen(False)
event.accept()
elif event.key() == Qt.Key_Enter and event.modifiers() & Qt.Key_Alt:
self.setFullScreen(not self.isFullScreen())
event.accept()
def mouseDoubleClickEvent(self, event):
self.setFullScreen(not self.isFullScreen())
event.accept()
这是我用来解决问题的方法。在Ui_MainWindow下还有其他东西,但这应该有助于任何有同样问题的人。