Выйти из полноэкранного режима

У меня вопрос, как выйти из полноэкранного режима. Я сделал программу, которая настроена как таковая:

    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. Извините, что не предоставил полный код, это для школьного задания, и если код найден в Интернете, может быть сложно доказать, что это все мое.


person L.John.B    schedule 19.07.2016    source источник
comment
Большая часть кода, который вы показали, не имеет отношения к проблеме, которую вы на самом деле пытаетесь решить. Опубликуйте правильный минимально воспроизводимый пример.   -  person ekhumoro    schedule 19.07.2016
comment
Неясно, связана ли проблема с обработкой события нажатия клавиши (из-за того, как настроен код, я не могу заставить их работать) или с функцией выхода из полноэкранного режима.   -  person Ceppo93    schedule 19.07.2016


Ответы (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 были и другие вещи, но это должно помочь всем, у кого возникла такая же проблема.

person L.John.B    schedule 20.07.2016