[Qgis-user] Looking for QGIS Python code for a three-level menu?
Raymond Nijssen
r.nijssen at terglobo.nl
Sun May 12 12:31:36 PDT 2024
Hi Mike,
I'm afraid you cannot add submenus to the plugin menu.
The addPluginToMenu function only takes actions as an argument:
action_1 = QAction('Action 1')
iface.addPluginToMenu('Plugin 1', action_1)
menu_1 = QMenu('Menu 1')
iface.addPluginToMenu('Plugin 1', menu_1)
The last line causes this error:
TypeError: QgisInterface.addPluginToMenu(): argument 2 has unexpected
type 'QMenu'
Also see the docs:
https://qgis.org/pyqgis/master/gui/QgisInterface.html#qgis.gui.QgisInterface.addPluginToMenu
There might be a tricky way to get the QMenu of the main QGIS window and
somehow add things in a Qt way.
Kind regards,
Raymond
On 12-05-2024 19:35, Elstermann, Mike via QGIS-User wrote:
> Hello everyone,
>
> I'm looking for a piece of QGIS Python code for a three-level menu,
> something like this:
>
> Plugins
> |
> |
> MyMenu > -+-- Submenu 1 > ---- SubSubMenu 1.1
> | | +--- SubSubMenu 1.2
> | | +--- SubSubMenu 1.3
> Other... |
> +-- Submenu 2 > ---- SubSubMenu 2.1
> | +--- SubSubMenu 2.2
> | +--- SubSubMenu 2.3
> | +--- SubSubMenu 2.4
> |
> +-- Submenu 3 > ---- SubSubMenu 3.1
> +--- SubSubMenu 3.2
> Can anyone help with a code snippet?
> Thanks & best regards, mikeE.
>
> _______________________________________________
> QGIS-User mailing list
> QGIS-User at lists.osgeo.org
> List info: https://lists.osgeo.org/mailman/listinfo/qgis-user
> Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-user
More information about the QGIS-User
mailing list