- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
Formations
Articles
Communauté

La certification qualité a été délivrée pour la catégorie d'actions « Actions de formation ».
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
Formations
Articles
Communauté

La certification qualité a été délivrée pour la catégorie d'actions « Actions de formation ».
Deviens membre Premium magic_button
Débloque cette session en devenant Membre Premium 🚀
Inscris-toi
(c'est gratuit !)
Un compte est nécessaire pour participer aux discussions.
Créer un compte person00:00:00 :Dans cette partie, on va faire les connexions entre nos différentes actions et ce qu'elles doivent effectuer.Pour ça, on va aller dans notre méthode SetupConnections.
00:00:09 :Je peux cliquer sur la méthode et faire CTRL-B ou POMME-B pour m'y rendre directement.Je suis dans ma méthode SetupConnections et je vais pouvoir connecter les actions aux différentes fonctions.
00:00:21 :On va utiliser notre action Open pour l'instant.Le signal qui va être activé quand on va cliquer sur le bouton qui correspond à l'action, c'est le signal Triggered, comme ceci.
00:00:32 :On va connecter ce signal à notre méthode. Dans ce cas-ci, ça va être la méthode Open.L'action Open, c'est celle qui se retrouve dans le fichier quand on fait FICHIER-OUVRIR.
00:00:41 :Quand on va cliquer dessus, on va lancer cette méthode qui va nous permettre d'aller sélectionner un fichier à lire.On va connecter ensuite notre action Play qui nous permet de faire jouer le lecteur multimédia.
00:00:52 :Je vais faire là encore Triggered.Connect et on va faire Self.Player.Play.Ça va nous permettre de faire jouer notre lecteur multimédia.On va faire une petite modification parce que vous allez voir qu'il y a un petit bug.
00:01:05 :Je crois que je l'ai vu juste sur Mac et non pas sur Windows et Linux.Mais on a un petit bug quand on fait jouer la vidéo.
00:01:12 :Quand elle a fini de jouer, si on change la taille de la fenêtre, elle ne change pas de taille.Il faut faire une petite astuce que je vais vous montrer.
00:01:20 :Pour ça, on va devoir créer une méthode puisqu'on va devoir faire deux lignes de code à chaque fois qu'on va faire jouer la vidéo.Je vais faire une méthode Play ici.
00:01:28 :A la place de faire Self.Player.Play, on va faire tout simplement Self.Play.On va appeler cette méthode.A l'intérieur de cette méthode, on va remettre cette fois-ci le Self.Player.Play pour faire jouer notre lecteur multimédia.
00:01:41 :Mais en plus, on va changer la taille du vidéo widget.On va faire Self.VideoWidget.Resize pour changer la taille du vidéo widget.Et on va lui donner une taille CutieCore.CueSize.
00:01:54 :Là encore, CutieCore qui nous permet de créer des constantes.Et ce CueSize, on va le mettre à 1x1.En fait, ça va juste avoir comme effet de rafraîchir la taille du widget vidéo juste après qu'on fasse jouer la vidéo.
00:02:07 :Puisque comme je vous disais, si vous changez la taille de la fenêtre, si on ne fait pas cette ligne de code pour faire un rafraîchissement de la taille,on va avoir l'ancienne taille.
00:02:16 :Donc on va avoir une vidéo en tout petit si jamais vous avez agrandi la taille de la fenêtre.Donc le fait de faire ce Resize, ça va régler ce problème.
00:02:23 :On va ensuite connecter les autres boutons.Donc cette fois-ci, le bouton Pause par exemple.Et on va le connecter cette fois-ci à Self.Player.Pause.Donc là, je passe directement par Player.
00:02:35 :On n'a pas besoin de faire cette méthode ici.Puisque c'est juste quand on joue la vidéo, quand on refait Play après avoir changé, qu'on a ce problème.
00:02:41 :Donc là, je passe directement par mon lecteur multimédia et je lui dis que je veux le mettre en Pause.Donc ça, c'est la méthode Pause de mon lecteur multimédia.
00:02:48 :On va ensuite faire la même chose avec notre action Stop.Et on va connecter ça à Self.Player.Stop.Donc vous voyez, c'est vraiment très très facile.
00:02:56 :Il y a beaucoup de choses comme ça qui sont déjà prévues dans PySide.On n'a pas besoin de réinventer la roue.Tout est prévu directement à partir de notre widget multimédia.
00:03:04 :La dernière action qu'on va connecter, c'est celle quand on clique sur la flèche qui nous permet de revenir au tout début de la vidéo.Donc ça, c'est l'action Previous.
00:03:12 :On va là encore faire Triggered Connect.Sauf que cette fois-ci, on va la connecter à une méthode à laquelle on doit passer un argument.Donc en fait, c'est Self.Player.SetPosition.
00:03:23 :Et cette position, on peut lui dire par exemple, revient au tout début de la vidéo en lui donnant le nombre 0.Donc 0 pour revenir au début.
00:03:30 :Sauf que je ne peux pas mettre tout ça directement dans Connect.Puisque si je fais ça, avec les parenthèses, on va appeler cette méthode et on va automatiquement revenir au début de la vidéo.
00:03:41 :Nous, ce qu'on veut, ce n'est pas appeler cette méthode.C'est juste lui dire que quand on clique sur l'action, on va lancer cette méthode avec l'argument 0 qui va être envoyé.
00:03:49 :Pour ça, on doit passer par un module qui s'appelle PhongTools.Je vais l'importer ici.C'est un module de la librairie standard.Je le mets avant PySide 2 puisque PySide 2, ce n'est pas un module de la librairie standard.
00:04:01 :C'est un module qu'on a installé en plus.Là encore, PEP8, on essaie de séparer les imports.Je vais ici faire From PhongTools Import Partial.Ça, c'est une fonction, la fonction Partial qui est contenue à l'intérieur de PhongToolsqui va me permettre, à l'intérieur de ma connexion, d'appeler une méthode et de lui passer un argument.
00:04:29 :La méthode qu'on veut appeler, c'est self.player.setPosition.On ne met pas les parenthèses, bien attention là encore, puisqu'on ne veut pas appeler cette méthode, on veut juste la lier.
00:04:39 :Donc, setPosition et ensuite on va lui donner ici, en deuxième argument, ce que l'on veut envoyer à cette méthode,setPosition, quand on va cliquer sur notre action.
00:04:47 :Ce qu'on va envoyer, c'est le nombre 0 pour revenir au début de notre vidéo.Voilà pour cette action.On est obligé de passer par cette façon de faire quand on veut envoyer des arguments à l'intérieur de connexion.
00:04:58 :Donc là, on ne peut pas juste avoir une connexion simple comme ici, où on fait juste dire stop ou pause ou play ou open.Donc là, c'est juste une seule chose.
00:05:06 :On met une méthode, on la connecte à notre action et c'est fini.Là, il faut qu'on envoie un argument et donc on est obligé de passer par cette fonction, par show,pour lui passer en premier argument la méthode et en deuxième les arguments qu'on veut envoyer à cette méthode.
00:05:18 :On pourra en mettre d'autres après.Si jamais vous avez une méthode qui prend 2, 3 ou 4 arguments, vous pourriez mettre des virgules et passer d'autres arguments à la suite.
00:05:25 :Là, pour l'instant, on n'a qu'un seul argument, donc on passe uniquement l'argument 0 ici à cette position.Donc voilà pour les connexions.On va tester notre application pour voir si ça fonctionne.
00:05:35 :On va essayer d'ouvrir une vidéo et de faire play, pause, stop et de revenir également au début.Je lance l'application.Là, je vais juste enlever puisque automatiquement, il va ouvrir.
00:05:46 :On a dû laisser à l'intérieur du init notre open.Je vais l'enlever.Je vais enlever les lignes vides ici également.On va relancer l'application.Et normalement, de base, on a l'application qui se lance.
00:05:57 :On n'a plus la fenêtre qui s'ouvre pour nous demander d'ouvrir une vidéo.Par contre, maintenant, si je clique sur fichier ouvrir ou que j'utilise le raccourci pomme haut,on devrait revenir à cette fenêtre qui va me permettre de sélectionner un fichier.
00:06:09 :Je vais aller dans Tbash ici, movies, sélectionner mon fichier de test.Je clique sur open.Là, le fichier se lit correctement.Je peux cliquer sur la flèche pour revenir au début.
00:06:21 :Ça aussi, ça fonctionne bien.Je peux cliquer sur le bouton ici pour faire pause.Et si je veux arrêter la vidéo, je clique sur le carré stop et automatiquement, la vidéo s'arrête.
00:06:32 :Tout fonctionne bien.On arrive à ouvrir un fichier.On arrive à utiliser nos boutons.Et dans la prochaine partie, on va voir comment mettre à jour l'état des boutonspuisque pour l'instant, vous voyez qu'à chaque fois, si je relance ici mon script,ils sont tout le temps noirs.
Ce n'est pas fini...
✋
Tu as complété % du parcours 🔥
Termine l'intégralité de la formation pour pouvoir débloquer ton attestation de réussite.