6. Mode plein écran
Beaucoup d'applications GUI proposent un mode plein écran. Ce mode, qui agrandit
l'application à tout l'écran en cachant la barre de titre de la fenêtre principale, est
particulièrement attrayant pour des applications comportant une vue graphique et pour
les plateformes mobiles.
Contrairement à ce qu'on pourrait croire, le mode plein écran est très simple à
implémenter en PyQt : la classe QWidget fournit une méthode showFullScreen, qu'il
suffit d'appeler sans aucun argument ! On peut ainsi mettre tout widget en plein écran,
même si cela n'a pas forcément toujours du sens. Pour quitter ce mode et restaurer la
taille initiale, on appelle showNormal() sur le widget. Comme QGraphicsView hérite
de QWidget, on a tout ce qu'il faut pour notre besoin.
En ajoutant les quelques lignes qui suivent dans VueMosaiQ.keyPressEvent, on
utilise la touche F11 pour passer en mode plein écran et Esc pour en sortir.
…
class VueMosaiQ(QGraphicsView):
…
def keyPressEvent(self,keyEvent):
…
elif key == Qt.Key_F11:
self.showFullScreen()
elif key == Qt.Key_Escape:
self.showNormal()
…
Oui… c'est aussi simple que cela !
247
Beaucoup d'applications GUI proposent un mode plein écran. Ce mode, qui agrandit
l'application à tout l'écran en cachant la barre de titre de la fenêtre principale, est
particulièrement attrayant pour des applications comportant une vue graphique et pour
les plateformes mobiles.
Contrairement à ce qu'on pourrait croire, le mode plein écran est très simple à
implémenter en PyQt : la classe QWidget fournit une méthode showFullScreen, qu'il
suffit d'appeler sans aucun argument ! On peut ainsi mettre tout widget en plein écran,
même si cela n'a pas forcément toujours du sens. Pour quitter ce mode et restaurer la
taille initiale, on appelle showNormal() sur le widget. Comme QGraphicsView hérite
de QWidget, on a tout ce qu'il faut pour notre besoin.
En ajoutant les quelques lignes qui suivent dans VueMosaiQ.keyPressEvent, on
utilise la touche F11 pour passer en mode plein écran et Esc pour en sortir.
…
class VueMosaiQ(QGraphicsView):
…
def keyPressEvent(self,keyEvent):
…
elif key == Qt.Key_F11:
self.showFullScreen()
elif key == Qt.Key_Escape:
self.showNormal()
…
Oui… c'est aussi simple que cela !
247
