Meine Ausgangssituation:
TableView mit ca 30 Spalten
Ein Tuple mit den Spaltennamen.
In meinem Model möchte ich auf die Spalten mittels ENUMS zugreifen da bei 30 Spalten mit Zahlenindex zu schaffen doch sehr sehr verwirrend ist.
Bsp:
Code: Alles auswählen
PARAMETER_1, PARAMETER_2, ..., PARAMETER_n = range(n)
# im Model
def data(self, index, role=Qt.DisplayRole):
.
.
if role == Qt.CheckStateRole:
if column == PARAMETER_1: # Spalte 1
return QVariant(landuse.getWater())
elif column == PARAMETER_2: # Spalte 2
return QVariant(landuse.getFertil())
elif column == PARAMETER_3: # Spalte 3
usw.
Um nicht zuviele stellen nach einer Änderung anpassen zu müssen
(vor allem zwei Listen von hand synchronisieren)
war mein Plan dass ich mein Spaltennamen-Tupel Automatisch in eine ENUM Liste verwandel.
Dadurch könnte ich auch recht einfach mit der Codevervollständigung auf die Enums zugreifen. Weil genau das geht mit einem Tuple oder Liste etc. nicht.
Irgendwie finde ich darüber aber nicht viel und mir kam der Verdacht das die
Vorgehensweise nicht sonderlich schlau sei.
Hat jemand eine Idee wie ich das umsetzten/lösen kann ?
Gruß