TableView+Combobox oder wie? Anfängerfrage!

Python und das Qt-Toolkit, erstellen von GUIs mittels des Qt-Designers.
Antworten
greyhole
User
Beiträge: 1
Registriert: Donnerstag 3. Mai 2012, 14:44

Hallo liebe Community!
Ich sitze nun seit einer Weile an einem Problem und komm der Lösung einfach nicht näher.
Ich habe eine Client-Server-Application in Python 2.7 geschrieben und möchte da nun eine GUI für die Clients bauen.
Ich brauche dafür unter anderem eine 4x200 Tabelle bei der die Elemente aus Comboboxen bestehen.

Der Server schickt dabei eine Liste mit den Comboboxelementen an den Client und diese sollen da ausgewählt werden. wenn ein neues Element ausgewählt wird soll der gewählte Wert, die Zeile und die Spalte zurück an den Server geschickt werden, muss also irgendwie ausgelesen werden können.
Ausserdem soll das ganze wiederherstellbar sein. Ich habe also eine Liste mit den bisher gewählten Werten und diese muss ich irgendwie Zurückspielen können.

Ich kenne mich leider überhaupt nicht mit PyQT bzw QT4 aus und hatte geplant die Oberfläche mit dem QT-Designer zu bauen und dann im nachhinein so zu verändern wie ich es möchte.
Da ich mich aber nicht mit TableView,TableViewModel,ComboboxWidget und desgleichen auskenne komme ich nicht weiter und ich finde leider auch keine wirklich detaillierte erklärung (also Tutorial).

Könnt ihr mir da weiterhelfen?

Vielen Vielen Dank!
Lg Greyhole
lunar

@greyhole: Verwende ein eigenes Model, dass intern mit dem Server kommuniziert. Zur Anzeige von Combo-Boxen musst Du einen eigenen Delegate implementieren. Beides ist im umfangreichen Model/View Programming Guide in der Qt-Dokumentation erklärt. Lies dieses Dokument, und stelle anschließend konkrete Fragen, wenn Du auf konkrete Probleme bei der Implementierung stößt. Du musst verstehen, dass Dir in diesem Forum niemand eine umfangreiche Einführung in dieses Thema geben kann und will.

Zum asynchronen Netzwerk-Zugriff kannst Du die Klassen aus dem "QtNetwork"-Modul nutzen. Auch dazu findet sich in der Dokumentation umfangreiche Hilfe.
Antworten