AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ListView: Nur die sichtbaren Listitems anzeigen

Ein Thema von Gerd01 · begonnen am 4. Apr 2014 · letzter Beitrag vom 6. Apr 2014
Antwort Antwort
Gerd01

Registriert seit: 18. Mär 2005
Ort: NRW
117 Beiträge
 
Delphi XE2 Professional
 
#1

AW: ListView: Nur die sichtbaren Listitems anzeigen

  Alt 4. Apr 2014, 17:07
Das "Einfassen" in Beginupdate und Endupdate ist Standard, sonst gäbe es ja beim Listview Aufbau ein elendes Geflackere.

Leider kann ich die Listview nicht filtern, da ich vorher nicht weiss, was der Benutzer sich ansehen will (Liste von Mails).

Ich habe vor einiger Zeit mal sowas gesehen, wie ich es mir wünsche. Ich brauche ja erstmal nur die anzuzeigenden Daten in der Listview. Erst wenn eine Scrolländerung vorliegt, müssen neue ListItem-Einträge "nachgeladen" werden.
  Mit Zitat antworten Zitat
ol1uw

Registriert seit: 24. Jul 2004
Ort: Freiberg
70 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: ListView: Nur die sichtbaren Listitems anzeigen

  Alt 4. Apr 2014, 18:26
Leider kann ich die Listview nicht filtern, da ich vorher nicht weiss, was der Benutzer sich ansehen will (Liste von Mails).
da bin ich mal optimistisch und sage aber der Benutzer sollte es wissen

Gibt es eine Möglichkeit nur die sichtbaren ListItems zu laden und dann bei Bedarf bei Tastatur- oder Mauseingabe die nächsten für die Sichtbarkeit erforderlichen ListItems nachzuladen?
eine Art Seitenmodus vielleicht siehe Anhang
Angehängte Grafiken
Dateityp: png dplvp.png (6,0 KB, 18x aufgerufen)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: ListView: Nur die sichtbaren Listitems anzeigen

  Alt 4. Apr 2014, 18:39
Also eine Eigenschaft die ListItems unsichtbar macht, ist mir nicht bekannt. Du kommst also um das Filtern nicht herum.

Das Geheimnis ist Virtual ListView, oder du lädst jedes mal die komplette ListView neu.

Anbei ein kleines Beispiel mit 8000 Einträgen. Es nutzt ListView virtual und arbeitet mit zwei Listen. Die erste Liste enthält alle Daten, die zweite Liste die gefilterten. ListView greift dann virtual auf die zweite Liste zu.

Das Ganze kann man natürlich noch ausbauen, ist ja nur ein Beispiel.
Angehängte Dateien
Dateityp: zip Virtual ListView Filtern.zip (2,5 KB, 14x aufgerufen)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#4

AW: ListView: Nur die sichtbaren Listitems anzeigen

  Alt 4. Apr 2014, 19:49
Gibt es eine Möglichkeit nur die sichtbaren ListItems zu laden und dann bei Bedarf bei Tastatur- oder Mauseingabe die nächsten für die Sichtbarkeit erforderlichen ListItems nachzuladen?
Die Frage habe ich überlesen. In dem Beitrag http://www.delphipraxis.net/1252959-post16.html habe ich eine Lösung die in etwa dem entspricht was in der Frage steht. Es werden zuerst leere Items angelegt und erst dann gefüllt wenn sie angezeigt werden.

Im Grunde genommen ist aber eine Virtual ListView besser, weil flexibler, bzw. das betreffende Projekt füllt die Items nach und nach mit Daten, Virtual ListView zeigt nur die Daten Items an die sichtbar sind.
  Mit Zitat antworten Zitat
Gerd01

Registriert seit: 18. Mär 2005
Ort: NRW
117 Beiträge
 
Delphi XE2 Professional
 
#5

AW: ListView: Nur die sichtbaren Listitems anzeigen

  Alt 6. Apr 2014, 08:14
Vielen Dank für die Infos. Ich werde die Tipps jetzt mal ausprobieren.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#6

AW: ListView: Nur die sichtbaren Listitems anzeigen

  Alt 6. Apr 2014, 13:51
Wobei das Beispiel in #7 auch mit einer Liste lösbar ist. Statt die erste Liste erst filtern und in zweite Liste kopieren, kann man auch nur die erste Liste nutzen. Dann muss man im ersten Durchgang aber erst die Menge der gefilterten Einträge ermitteln.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz