2016-07-19 3 views
0

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

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) 

в любом случае, как бы я использую событие нажатия, чтобы выйти на полный экран. Я знаю, как сделать событие нажатия клавиши, однако из-за того, как настроен код, я не могу заставить их работать (отсюда очень грубая схема, приведенная выше).

Я запускаю окна 7, python 3.5, PyQt5.

P.S. Извините за то, что вы не указали полный код. Это для школьного задания, и если код будет найден в Интернете, он может оказаться трудно доказать, что это все мое.

+0

Большая часть кода, который вы указали, не имеет отношения к проблеме, которую вы на самом деле пытаетесь решить. Пожалуйста, разместите надлежащую [mcve]. – ekhumoro

+0

Неясно, связана ли проблема с обработкой события нажатия клавиш (_ «из-за того, как настроен код, я не могу заставить их работать» _) или функции выхода из полноэкранного режима. – Ceppo93

ответ

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 был другой материал, но это должно помочь кому-либо, имеющему ту же проблему.

Смежные вопросы