i was wondering how to set a phonon player to full screen? im trying this codes.
if not self.ui.videoPlayer.isFullScreen():
self.ui.videoPlayer.enterFullScreen()
else:
self.ui.videoPlayer.exitFullScreen()
but i keep on getting this error message
TypeError: 'sip.methoddescriptor' object is not callable
the code above works is from a sample project. the original code was
def full(self):
if not self.videoWidget.isFullScreen():
self.videoWidget.enterFullScreen()
else:
self.videoWidget.exitFullScreen()
im recreating it in PyQT and it seems hard for me. can anyone please guide me on what im missing(having a hunch about it) or what im doing wrong?
A VideoPlayer is not the same thing as a VideoWidget.
VideoPlayer
is a subclass of QWidget
, so it will have an isFullScreen
method - but it won't have the methods enterFullScreen
and exitFullScreen
, which belong to the VideoWidget
class.
However, the VideoPlayer
class has a videoWidget method which returns the instance of the video widget it uses, so your code example should probably be changed to:
videoWidget = self.ui.videoPlayer.videoWidget()
if videoWidget.isFullScreen():
videoWidget.exitFullScreen()
else:
videoWidget.enterFullScreen()
EDIT
To provide a method for exiting fullscreen mode, set up a keyboard shortcut:
class MainWindow(QtGui.QMainWindow):
def __init__(self)
...
self.shortcutFull = QtGui.QShortcut(self)
self.shortcutFull.setKey(QtGui.QKeySequence('F11'))
self.shortcutFull.setContext(QtCore.Qt.ApplicationShortcut)
self.shortcutFull.activated.connect(self.handleFullScreen)
def handleFullScreen(self):
videoWidget = self.ui.videoPlayer.videoWidget()
if videoWidget.isFullScreen():
videoWidget.exitFullScreen()
else:
videoWidget.enterFullScreen()