Ajout d'une barre d'outils via PyQGIS?

10

Grâce à des tutoriels, j'ai appris à ajouter un bouton d'outil à la barre d'outils plugins via python. Maintenant, je me demande comment ajouter une barre d'outils complète avec des boutons de barre d'outils via python.

Quelqu'un peut-il donner un exemple de code?

dimpflmoser
la source

Réponses:

17

Vous pouvez utiliser l'appel API addToolBar () via QgisInterface (ie iface) pour créer une barre d'outils personnalisée:

class MyPlugin:

    def __init__(self, iface):
        # Save reference to the QGIS interface
        self.iface = iface

    def initGui(self):
        # Add toolbar 
        self.toolbar = self.iface.addToolBar("My_ToolBar")

        # Create actions 
        self.someact = QAction(QIcon(":/plugins/MyPlugin/icons/someactionicon.png"),
                               QCoreApplication.translate("MyPlugin", "My Action"),
                               self.iface.mainWindow())

        # Connect action signals to slots
        self.someact.triggered.connect(self.doSomething)

        # Add actions to the toolbar
        self.toolbar.addAction(self.someact)

    def unload(self):
        # remove toolbar on plugin unload
        del self.toolbar

    def doSomething(self):
        # slot for action
        pass
dakcarto
la source