Formularfeld Typ feststellen
Verfasst: Donnerstag 20. Februar 2020, 12:14
Hallo,
ich habe lange mit mir gehadert, ob ich mein Problem hier einstellen soll oder nicht. Aber jetzt will ich es doch tun, da meine Suche mit Google und Co. keinen Erfolg brachte.
Folgende Umgebung, mit Qt Designer erstellt und ins Programm eingebunden:
Ein Formular mit ca. 30 LineEdit (Text) Feldern, ein paar Checkbox und einem TableWidget.
Das Formular füttert mit seinen Eingabeobjekten dieses Tablewidget, welches wiederum eine Datenbank füllt und eine Art Adressdatenbank darstellt.
Das Anzeigen der Daten aus der Datenbank in das Tablewidget und Abspeichern von neuen Datensätzen aus dem Formular funktioniert bereits.
Wenn ich aber durch "Doppelklick" auf eine Zeile im Widget die Daten in das Formular übernehmen will, bleibt das Programm spätestens an der ersten ComboBox stehen.
Die ComboBox unterstützt nicht das Attribut .setText() Soweit klar.
Wie kann ich den Typ des Feldes herausfinden um damit das richtige Attribut zu nehmen?
Ich fülle im Moment die Felder des Formulars mit Hilfe eines Arrays, in dem alle Feldnamen stehen.
In meiner Unwissenheit könnte ich mir sowas vorstellen wie: Ist es eine ComboBox, dann rufe def combobox auf, ermittle den aktuellen Index vom einzutragenden Wert und zeige ihn an.
Ähnliches würde ich dann mit den Checkboxen machen.
Gibt es so einen Befehl der mit im Klartext sagt, es handelt sich hier um eine Combobox, eine Checkbox, ein Lineedit?
Für eine kleine Hilfestellung wäre ich dankbar. Mein Wissensstand zu Python würde ich mit "geht schon" bezeichnen. Wenn's geht bitte einfach.
Danke
Matthias
ich habe lange mit mir gehadert, ob ich mein Problem hier einstellen soll oder nicht. Aber jetzt will ich es doch tun, da meine Suche mit Google und Co. keinen Erfolg brachte.
Folgende Umgebung, mit Qt Designer erstellt und ins Programm eingebunden:
Ein Formular mit ca. 30 LineEdit (Text) Feldern, ein paar Checkbox und einem TableWidget.
Das Formular füttert mit seinen Eingabeobjekten dieses Tablewidget, welches wiederum eine Datenbank füllt und eine Art Adressdatenbank darstellt.
Das Anzeigen der Daten aus der Datenbank in das Tablewidget und Abspeichern von neuen Datensätzen aus dem Formular funktioniert bereits.
Wenn ich aber durch "Doppelklick" auf eine Zeile im Widget die Daten in das Formular übernehmen will, bleibt das Programm spätestens an der ersten ComboBox stehen.
Die ComboBox unterstützt nicht das Attribut .setText() Soweit klar.
Wie kann ich den Typ des Feldes herausfinden um damit das richtige Attribut zu nehmen?
Ich fülle im Moment die Felder des Formulars mit Hilfe eines Arrays, in dem alle Feldnamen stehen.
In meiner Unwissenheit könnte ich mir sowas vorstellen wie: Ist es eine ComboBox, dann rufe def combobox auf, ermittle den aktuellen Index vom einzutragenden Wert und zeige ihn an.
Ähnliches würde ich dann mit den Checkboxen machen.
Gibt es so einen Befehl der mit im Klartext sagt, es handelt sich hier um eine Combobox, eine Checkbox, ein Lineedit?
Für eine kleine Hilfestellung wäre ich dankbar. Mein Wissensstand zu Python würde ich mit "geht schon" bezeichnen. Wenn's geht bitte einfach.
Danke
Matthias