- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
- Formations
- conversion_path Parcours & Formations
- science Projets
- data_object Exercices de code
- psychology Exercices IA
- quiz Quiz
- Articles
- rss_feed Blog
- sort_by_alpha Glossaire
- menu_book Guides
- help_center FAQ
- media_link Ressources
- Communauté
- groups La communauté
- forum Questions
- live_tv Mentorats
- science Projets mensuels
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 ajouter les actions à notre barre d'outils qui vont nous permettre de naviguer dans des dossiers qui sont assez couramment utilisés par un utilisateur,donc à savoir par exemple le bureau, le dossier pour les films, le dossier pour les images, mes documents, etc.
00:00:17 :On va là encore passer par Qt Core pour pouvoir récupérer les chemins vers ces dossiers de façon indépendante du système d'exploitation sur lequel vous êtes,si on met des chemins comme par exemple ces deux points slash mes documents, ça ne va pas forcément marcher sur macOS ou sur Linux.
00:00:32 :Ce qu'on va faire, alors accrochez-vous puisque ça fait des lignes assez longues, c'est utiliser à l'intérieur de Qt Core la classe QStandardPathqui va nous permettre de récupérer grâce à la méthode StandardLocations ces endroits où l'on peut retrouver par exemple le bureau, mes documents, etc.
00:00:49 :Donc ces endroits vous les avez ici dans l'aide de la documentation, donc là je suis sur la documentation de Qt, donc la documentation en C++,mais ce n'est pas grave, nous ce qui nous intéresse c'est juste ici le nom de ces constantes, donc là vous voyez on a le nom des constantes,
00:01:04 :par exemple pour aller sur le bureau, pour aller sur mes documents, et on en a plein plein plein comme ça qu'on peut utiliser,nous on va utiliser les principales, donc comme je vous disais par exemple le bureau, les documents pour la musique, les movies, pictures, etc.
00:01:16 :Donc nous ce qu'on va faire c'est ici vous voyez grâce à Qt Core, QStandardPath, donc grâce à cette classe et à la méthode StandardLocations,on va lui demander de nous retourner le chemin par exemple vers cette constante.
00:01:27 :Donc on va donner cette constante à la méthode, alors on va faire QtCore.QStandardPath. et là le nom de la constante qu'on va chercher,donc là dans ce cas-ci DesktopLocation, donc c'est ce que je vous disais de vous accrocher un peu, ça fait une ligne assez longue,donc on a notre classe ici avec la méthode et sur cette méthode et bien on passe en argument QtCore.QStandardPath encore une fois,
00:01:56 :puisque là vous voyez il y a un SAllocations, il peut y avoir certaines constantes comme par exemple les dossiers temporaires qui peuvent contenir plusieurs dossiers,nous dans ce cas-ci à chaque fois ça va être un seul dossier, le bureau il n'y en a qu'un, les documents il n'y en a qu'un, etc.
00:02:25 :Donc dans PyCharm vous remarquerez ici dans les ressources que je vais vous donner avec la formation que j'ai plusieurs icônes au format SVG,donc si je les ouvre vous voyez le format SVG en fait c'est un format texte qui définit mon icône.
00:02:37 :Donc l'icône on a un aperçu ici à droite donc là par exemple pour le bureau on va avoir le document, movies, etc.Donc tout ça c'est des icônes qui sont dans les ressources qu'on va pouvoir aller chercher dans notre interface ici grâce à notre variable ici self.ctx.
00:02:51 :Si vous vous souvenez bien grâce à l'application Context on peut aller rechercher ces ressources grâce au nom du fichier.On va déjà créer une méthode que je vais créer par exemple on va la faire ici juste avant le setup connections et on va l'appeler addActionsToToolbarpuisque cette méthode en fait elle va me permettre d'ajouter donc les actions à ma barre d'outils.
00:03:11 :Donc je vais copier le texte de cette méthode pour la créer ensuite ici juste en dessous de addWidgetsToLayout.Donc on va ajouter les actions to toolbar et à l'intérieur de ça on va aller chercher nos icônes et ajouter ces actions sur notre barre d'outils.
00:03:25 :Ce que je vais commencer par faire c'est créer une liste qui va être égale à toutes les locations.Donc j'appelle ça des locations on pourrait dire des chemins, des endroits comme vous voulez.
00:03:36 :Tous les endroits en fait où on va aller chercher les images.Donc on va avoir Desktop, Documents, Home, Movies, Musiques et Pictures.Donc je vais mettre tout ça dans une liste ici avec le nom en minuscule juste sans le .svg.
00:03:49 :Donc sans le .svg juste le premier nom ici donc par exemple Desktop, Documents, Home, etc.Donc on va mettre Home, ensuite on va mettre Desktop, ensuite Documents.
00:03:59 :Alors attention j'ai mis un point c'est une virgule donc Desktop je me suis trompé c'est un K et un T.Donc il faut faire vraiment très attention qu'on ait exactement le même nom ici puisqu'on va se servir de ces éléments dans la liste pour aller chercher les icônes.
00:04:12 :Donc il faut vraiment que ce soit exactement la même chose.Donc Documents, ensuite on va avoir Movies, Pictures et pour finir Musiques.Voilà.Donc là vous voyez je le mets en anglais puisque là le nom est en anglais.
00:04:24 :Donc si vous le mettez en français ici et que c'est en anglais dans le nom des icônes ça ne marchera pas.Ensuite on va faire une boucle.
00:04:30 :On va boucler donc à travers ces locations.Donc for location in locations.Là encore j'utilise le singulier et le pluriel comme vous commencez à être habitué je pense avec moi.
00:04:40 :J'utilise toujours cette façon de faire un peu quand je boucle dans une liste au niveau de mes variables.Et ensuite on va aller donc récupérer l'icône avec self.ctx.getResource.
00:04:50 :Et on va aller chercher donc le nom de l'icône sur lequel on est en train de boucler.Donc par exemple dans le premier cas de figure ici home.
00:04:56 :Et on va devoir ajouter donc l'extension svg.Donc je vais faire un fstring et je vais aller intégrer ici le nom de l'icône.Donc location et je vais rajouter .svg à la fin.
00:05:07 :Donc là on va se retrouver avec par exemple home.svg que l'on va aller rechercher dans les ressources.Donc là c'est directement dans base.Donc comme je vous disais tout ce qui est dans base on a juste besoin de mettre le nom du fichier pour aller récupérer le chemin complet vers l'icône.
00:05:20 :On va ensuite créer une action.Donc pour ça on va l'ajouter directement sur notre barre d'outils.Donc on va faire self.toolbar.addAction.Et on va ajouter notre action.
00:05:30 :Donc notre action la première chose qu'il faut lui donner c'est l'icône.Donc on va créer un qtgui.qicon puisque pour l'instant on a juste le chemin vers l'icône mais on n'a pas un QIcon.
00:05:39 :Là vous remarquez que PyCharm m'indique que le module qtgui n'est pas importé.Donc il va falloir aller l'importer ici à côté du qtcore.Donc je vais mettre l'import ici comme ça on pourra créer un QIcon.
00:05:51 :Le QIcon on va lui passer le chemin vers notre icône qu'on a récupéré à la ligne précédente.Et enfin on va lui donner le nom tout simplement du chemin vers lequel on va se retrouver quand on va cliquer sur cette icône.
00:06:06 :Donc là dans ce cas-ci ce que je vais faire c'est tout simplement location.Et on va faire un capitalize sur ce location pour avoir une majuscule.
00:06:13 :Donc plutôt que d'avoir home comme ça en minuscule on aura home avec une majuscule.Et pareil pour desktop, documents etc.Donc là encore je me sers de la chaîne de caractère sur laquelle on est en train de boucler pour le texte que je vais mettre sur mon action.
00:06:25 :Donc le texte qu'on met sur l'action en fait c'est quand vous allez mettre votre curseur sur l'icône.Si vous attendez quelques secondes vous allez avoir un texte qui va apparaître pour vous indiquer à quoi correspond l'icône.
00:06:35 :Et donc c'est ce texte que l'on va chercher ici et que l'on met en majuscule avec capitalize.Donc on va essayer ça, on va lancer notre script pour voir si ça fonctionne.
00:06:43 :On a bien notre barre ici, si par exemple je laisse mon curseur ici vous voyez qu'on a bien desktop qui s'affiche.Si je laisse mon curseur là on a bien documents et vous voyez qu'on a la majuscule qui a été ajoutée automatiquement.
00:07:00 :Par défaut on l'avait ajoutée au dessus donc on va la laisser ici.Et on a bien les icônes qui sont automatiquement récupérées depuis notre dossier ressources.
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.