Annonce
Pages: 1
- Sujet précédent - QGIS 3.40.1: comment gerer l ajout de boutons dans une toolbar ? - Sujet suivant
#1 Fri 29 November 2024 18:34
- liege67
- Participant assidu
- Lieu: Liège
- Date d'inscription: 10 Apr 2014
- Messages: 179
QGIS 3.40.1: comment gerer l ajout de boutons dans une toolbar ?
bonjour
j'ai ajouté un bouton dans la toolbar mMapNavToolBar, qui ouvre via un script python une mise en page spécifique
j'ai 2 soucis
+ comment conserver ce bouton supplémentaire d'une session à l'autre ? il ne revient pas à l'ouverture de qgis
+ quelles sont les caratéristiques des images à utiliser sur les boutons ? une seule fonctionne, récupérée depuis la doc de QGIS
merci, jean marc
Hors ligne
#2 Mon 02 December 2024 10:52
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1128
Re: QGIS 3.40.1: comment gerer l ajout de boutons dans une toolbar ?
Bonjour,
Je ne suis pas sûr de comprendre le problème (ou la source du problème). Je ne sais pas comment vous avez ajouter votre bouton. De sûr, ils se gèrent dans Onglet 'Préférences' -> 'Options' - > Rubrique 'Traitement' -> Paramètre 'Menu' -> Script: vous avez ici l'ensemble des scripts qui peuvent apparaître ou non dans la barre d'outils (il faut pour cela cocher l'option 'Add button in toolbar'.
Pour les icônes, j'utilise des .png
Est-ce que ça vous aide ?
Hors ligne
#3 Mon 02 December 2024 14:22
- liege67
- Participant assidu
- Lieu: Liège
- Date d'inscription: 10 Apr 2014
- Messages: 179
Re: QGIS 3.40.1: comment gerer l ajout de boutons dans une toolbar ?
bonjour
de fait ma demande est imprécise
l'ajout de bouton se fait via un script python, et je comprends bien que son existence soit liée à la session durant laquelle le script est exécuté
depuis j'ai découvert le chemin C:\Users\<VotreNomUtilisateur>\AppData\Roaming\QGIS\python\startup pour y placer les scripts à démarre mais je n'ai pas encore testé
jm
Hors ligne
#4 Thu 02 January 2025 15:45
- liege67
- Participant assidu
- Lieu: Liège
- Date d'inscription: 10 Apr 2014
- Messages: 179
Re: QGIS 3.40.1: comment gerer l ajout de boutons dans une toolbar ?
bonjour
je reprends mon baton de pélerin pour ajouter automatiquement un script PY au démarrage de QGIS
j'ai créé (avec Copilot) le script startup.py sous C:\Users\liege\AppData\Roaming\QGIS\QGIS3\profiles\default\python, il contient ce code
import os
import sys
# Ajouter le chemin du script à sys.path pour s'assurer qu'il est trouvable
script_path = 'Q:/cartographie/scripts'
if script_path not in sys.path:
sys.path.append(script_path)
# Importer et exécuter le script
import AddBoutonOpenForm1
# Exécuter une fonction spécifique du script s'il en contient une
if hasattr(AddBoutonOpenForm1, 'main'):
AddBoutonOpenForm1.main()
else:
print("Le script AddBoutonOpenForm1-V2.py ne contient pas de fonction 'main'")
et le script appelé (AddBoutonOpenForm1) commence comme ceci
from qgis.core import *
from qgis.gui import *
from qgis.utils import iface
from qgis.PyQt.QtWidgets import QAction, QToolBar
from qgis.PyQt.QtGui import QIcon
from qgis.core import QgsMessageLog, Qgis
def main():
QgsMessageLog.logMessage("Le script AddBoutonOpenForm1.py a été exécuté avec succès !", level=Qgis.Info)
if __name__ == "__main__":
QgsMessageLog.logMessage("Exécution directe du script AddBoutonOpenForm1.py", level=Qgis.Info)
main()
else:
QgsMessageLog.logMessage("Importation du script AddBoutonOpenForm1.py", level=Qgis.Info)
le script AddBoutonOpenForm1 n'est pas chargé au démarrage de qgis, alors qu'il s'exécute correctement depuis la console
j'ai aussi ajouté dans mon environnement la variable PYQGIS_STARTUP qui pointe vers le fichier startup.py, sans succès
je n'ai aucun message dans le journal de qgis
je dirais que c'est un problème d'environnement, mais je n'arrive pas à le régler
merci pour vos suggestions
jean marc
Hors ligne
Pages: 1
- Sujet précédent - QGIS 3.40.1: comment gerer l ajout de boutons dans une toolbar ? - Sujet suivant