Hallo,
ich habe eine QT Listbox. Darin speicher ich z.B. Mitarbeiternamen. Da ich diese aber einmalig über eine ID in der DB identifiziere, muss ich eine parallele Liste mit diesen IDs verwalten
Solang die Listen eu geladen wird geht das auch aber wenn ich jetzt ein Element entferne oder hinzufüge wird die interne Nummerierung der Listbox durcheinader geworfen
z.B.
ListBox
Nr. Wert:
1 Michael
2 Markus
3 Thomas
4 Horst
5 Sabine
6 Karin
7 John
8 Bernd
removeItem(4) und das ganze siehtd ann wohl ungefähr so aus
Nr. Wert:
1 Michael
2 Markus
3 Thomas
4 Sabine
5 Karin
6 John
7 Bernd
Noch schlimmer wirds dann wohl wnen ich ein sort auf diese Listbox ausführe nachdem ich ein neues Ite hinzugefügt habe:(
Eine Liste wäre ungefähr so aufgebaut
mitarbeiter[1]= 105
mitarbeiter[2]= 366
mitarbeiter[3]= 15
mitarbeiter[4]= 66
u.s.w.
Wenn ich jetzt mit removeItem aus der Listbox einen Eintrag entferne wird die Nummern kaum nachvollziehbar neu nummeriert udn die Verbindung der beiden Datensätze ist wech:(
In HTML z.B. kann man für jeden Eintrag einen Namen udn einen Wert speichern. Das machtd as ganze sehr komfortabel:(
Wie kann ich das trpotzdem verwalten?
Anfänglich habe ich die ganze Liste neu geladen aber das geht aus Geschwindigkeitsgründen nicht mehr bei ca 1000 Einträgen
Python und /oder QT
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
Eine Klasse schreiben, die von ListBoxText abgeleitet ist.
Diese wird denn entsprechend und die gewünschen Funktionen
erweitert.z.B:
Diese wird denn entsprechend und die gewünschen Funktionen
erweitert.z.B:
Code: Alles auswählen
class wasauchimmer: public QListBoxText
{
public:
wasauchimmer(QListBox *liste,QString text,uint angestelltenid);
uint AngestelteIDHohlen();
private:
uint AngestellteID;
};
wasauchimmer::wasauchimmer(QLiszbox *liste,QString text,uint angestelltenid):QListboxText(liste,text)
{
AngestellteID=angestelltenid;
}
uint wasauchimmer::AngestelteIDHohlen()
{
return AngestellteID;
}
Re: Python und /oder QT
Eine weitere Spalte für den Index und deren Breite setzt Du auf 0. Ist für den User nicht sichtbar und er kann auch nicht drauf zugreifen.notebook20000 hat geschrieben:Wie kann ich das trpotzdem verwalten?
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
-
notebook20000
- Beiträge: 16
- Registriert: 21. Juni 2005 09:35
Weitere Spalte
Hallo,
wie geht sowas ? Wie kann ich eine weietre Spalte hinzufügen ?
Es geht um eine ComboBox oder Listbox!!
Ich setze derzeit mit
self.listBoxKunden.insertItem(row["kundenname"])
einen Eintrag
Das ist dann der Wert der auch angezeigt wird. Wie setze ich jetzt aber eine passende ID, so das ich abfragen kann welcher Eintrag mit welcher ID gewählt wurde
wie geht sowas ? Wie kann ich eine weietre Spalte hinzufügen ?
Es geht um eine ComboBox oder Listbox!!
Ich setze derzeit mit
self.listBoxKunden.insertItem(row["kundenname"])
einen Eintrag
Das ist dann der Wert der auch angezeigt wird. Wie setze ich jetzt aber eine passende ID, so das ich abfragen kann welcher Eintrag mit welcher ID gewählt wurde