[gelöst] [qt 3.3] Sprünge in QListBox
Verfasst: 10. Juli 2008 13:02
Hallo,
ich habe folgendes Problem.
Ich habe eine QListBox mit 64 Einträgen von den jeweil nur 5 sichtbar sind.
Die Listbox wird sekündlich aktualisiert, sprich alle einträge werden gelöscht und dann neu hinzugefügt. Vor dem löschen merke ich mir das aktuell gehighlightete Item mit currentItem() und wenn die List neu aufgebaut ist setzte ich dieses wieder mit setCurrentItem(). das klappt soweit.
Nun muss ich zur Auswahl eines neuen Elementes ggf auch mal nach unten scrollen, da ja nur 5 Items sichtbar sind. Bei jedem Update aber springt nun die Liste wieder zurück auf das gehighlightete Item. Nun habe ich versucht mir vor der Aktualisierung auch noch das TopItem mit topItem() zu merken und es nach der Aktualisierung und dem Highlighten wieder zu setzten. Das funktionieret allerdings auch nicht.
Dann ist mir weiterhin aufgefallen, das bein Starten kein Item gehighlightet ist, wie zu erwarten war. Fange ich aber an in der Liste zu scrollen setzt die Box current Item automatisch auf 0. Evtl. liegt das Problem auch hier.
Weiß einer Rat?
Habe auch schon versucht zu schauen, ob das zu highlightende Item in sichbaren bereich liegt, also zwischen topItem und topItem +4 und es nur dann wieder neu zu setzten. Funktioniert aber auch nicht...
ich habe folgendes Problem.
Ich habe eine QListBox mit 64 Einträgen von den jeweil nur 5 sichtbar sind.
Die Listbox wird sekündlich aktualisiert, sprich alle einträge werden gelöscht und dann neu hinzugefügt. Vor dem löschen merke ich mir das aktuell gehighlightete Item mit currentItem() und wenn die List neu aufgebaut ist setzte ich dieses wieder mit setCurrentItem(). das klappt soweit.
Nun muss ich zur Auswahl eines neuen Elementes ggf auch mal nach unten scrollen, da ja nur 5 Items sichtbar sind. Bei jedem Update aber springt nun die Liste wieder zurück auf das gehighlightete Item. Nun habe ich versucht mir vor der Aktualisierung auch noch das TopItem mit topItem() zu merken und es nach der Aktualisierung und dem Highlighten wieder zu setzten. Das funktionieret allerdings auch nicht.
Dann ist mir weiterhin aufgefallen, das bein Starten kein Item gehighlightet ist, wie zu erwarten war. Fange ich aber an in der Liste zu scrollen setzt die Box current Item automatisch auf 0. Evtl. liegt das Problem auch hier.
Weiß einer Rat?
Habe auch schon versucht zu schauen, ob das zu highlightende Item in sichbaren bereich liegt, also zwischen topItem und topItem +4 und es nur dann wieder neu zu setzten. Funktioniert aber auch nicht...