[FOSSGIS-Talk] enum.IntEnum statt Int in QgsAction in Python

Daniel Cebulla daniel.cebulla at jena.de
Fr Apr 12 06:01:46 CEST 2024


Guten Morgen,

Für das Protokoll, hab die Lösung hier gefunden: 
https://gis.stackexchange.com/questions/308523/defining-action-with-pyqgis-directly.

Hätte vermutet, dass es so sein muss:
  action = QgsAction (AttributeActionType.GenericPython, 'test', txt)

Ist tatsächlich aber so:
action = QgsAction (QgsAction.GenericPython, 'test', txt)

Liebe Grüße
Daniel


Am 11.04.2024 um 16:11 schrieb Daniel Cebulla via FOSSGIS-Talk-Liste:
> Hallo Liste,
>
> über ein eigenes QGIS-Plugin wird bestimmten Ebenen beim importieren 
> eine Aktion zugeordnet. Das wird im Python-Skript über "QgsAction" 
> gelöst, wo sich mit "//ActionType" der Typ der Aktion definieren lässt.
>
> Bis QGIS 3.28 war das einfach ein Integer-Wert: 
> https://qgis.org/pyqgis/3.28/core/QgsAction.html#qgis.core.QgsAction.ActionType. 
> Ich konnte also den Typ einfach definieren mit QgsAction(ActionType = 
> 1, ...)
> Mit QGIS 3.30 hat sich aber der Typ geändert und dies muss jetzt als 
> enum.IntEnum angegeben werden: 
> https://qgis.org/pyqgis/3.34/gui/Qgis.html#qgis.gui.Qgis.AttributeActionType
>
> Meine Python-Kenntnisse reichen leider nicht ganz soweit und ich stehe 
> jetzt etwas auf dem Schlauch, wie ich das jetzt angeben muss. Wie 
> definiere ich also jetzt "AttributeActionType" (vormals "ActionType") 
> in "QgsAction"?
>
> Wie immer besten Dank für Eure Hilfe!
>
> Liebe Grüße
> Daniel
>



Mehr Informationen über die Mailingliste FOSSGIS-Talk-Liste