2016-07-19 14 views
0

Meine Frage ist, wie ich den Vollbildmodus beenden. Ich habe ein Programm gemacht, die als solche eingerichtet ist:Beenden Vollbild 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) 

sowieso, Wie würde ich ein Tastendruck-Ereignis verwende vollen Umfang nutzen zu beenden. Ich weiß, wie man einen Tastendruck durchführt, aber aufgrund der Art und Weise, wie der Code eingerichtet wird, kann ich nicht scheinen, dass er funktioniert (daher das sehr grobe Layout, das oben gegeben wurde).

Ich benutze Windows 7, Python 3.5, PyQt5.

P.S. Entschuldigung dafür, dass ich keinen vollständigen Code herausgebe, dies ist für eine Schulaufgabe und wenn der Code online gefunden wird, könnte es schwierig werden, zu beweisen, dass alles mein ist.

+0

Der meiste Code, den Sie angezeigt haben, hat keine Relevanz für das Problem, das Sie tatsächlich lösen möchten. Bitte poste ein ordentliches [mcve]. – ekhumoro

+0

Es ist nicht klar, ob das Problem auf die Behandlung eines Tastendruckereignisses zurückzuführen ist (_ "wegen der Art, wie der Code eingerichtet ist, kann ich nicht scheinen, dass sie funktionieren" _) oder eine Funktion zum Beenden des Vollbilds. – Ceppo93

Antwort

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() 

Dies ist, was ich verwendet habe, um das Problem zu lösen. Es gab andere Sachen unter dem Ui_MainWindow, aber das sollte jedem helfen, der das gleiche Problem hat.