Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi ListBox.SelectAll dauert etwas länger (https://www.delphipraxis.net/167986-listbox-selectall-dauert-etwas-laenger.html)

EWeiss 29. Apr 2012 14:46

AW: ListBox.SelectAll dauert etwas länger
 
Was spricht dagegen nur Sichtbare Einträge zu verwalten.
Da ist es eigentlich egal wieviele Einträge sich in der liste befinden.

Bei 30 Tausend Songs/Titel oder aber 50K an Einträgen wäre es auch sinnvoll auf SQL(Datenbanken) umzusteigen anstelle vom Listbox/en
Von daher muss ich Furtbichler recht geben "GUI-Design"
Es kommt halt immer darauf an was man anschließend mit den Einträgen tun möchte.

OT:
Das ist widermal so eine zwischen Antwort die dem Thread ersteller "An den Pranger" nicht gefallen würde.

gruss

Bummi 29. Apr 2012 15:24

AW: ListBox.SelectAll dauert etwas länger
 
Ich hätte noch einen On Topic - Vorschlag, solange die Anzahl der Einträge unterhalb von 65535 bleibt, Latenz= 0, statt Listbox.SelectAll :
Delphi-Quellcode:
   SendMessage(Listbox.Handle, LB_SELITEMRANGE, Longint(True), (Listbox.count-1) * 65536 );

Amateurprofi 30. Apr 2012 11:21

AW: ListBox.SelectAll dauert etwas länger
 
Zitat:

Zitat von Bummi (Beitrag 1164160)
Ich hätte noch einen On Topic - Vorschlag, solange die Anzahl der Einträge unterhalb von 65535 bleibt, Latenz= 0, statt Listbox.SelectAll :
Delphi-Quellcode:
   SendMessage(Listbox.Handle, LB_SELITEMRANGE, Longint(True), (Listbox.count-1) * 65536 );

Das funktioniert auch hervorragend und hat den Vorteil, dass man sich das Abfragen und Setzen des TopIndex's sparen kann. Einziger Nachteil ist, dass Count limitiert ist.
Danke Bummi!

Amateurprofi 30. Apr 2012 11:30

AW: ListBox.SelectAll dauert etwas länger
 
Zitat:

Zitat von EWeiss (Beitrag 1164156)
Es kommt halt immer darauf an was man anschließend mit den Einträgen tun möchte.

OT:
Das ist wiedermal so eine zwischen Antwort die dem Thread ersteller "An den Pranger" nicht gefallen würde.

gruss

Richtig, es kommt darauf an, was man machen will!
Und warum sollte mir das "An den Pranger" nicht gefallen.
Erstens weiß ich wer's schreibt und zweitens freue ich mich, wenn jemand, der keinerlei Information hat, was eigentlich beabsichtigt ist, Negativkommentare statt konstruktiver Hilfe bietet.
Spricht doch für sich!

Valle 30. Apr 2012 11:56

AW: ListBox.SelectAll dauert etwas länger
 
Zitat:

Zitat von Amateurprofi (Beitrag 1164249)
Und warum sollte mir das "An den Pranger" nicht gefallen.

Es ging darum, dass der Threadersteller des Threads "An den Pranger" diese Antworten nicht mögen wird.

Zitat:

Zitat von Amateurprofi (Beitrag 1164249)
[...] zweitens freue ich mich, wenn jemand, der keinerlei Information hat, was eigentlich beabsichtigt ist, Negativkommentare statt konstruktiver Hilfe bietet.

Ich habe in diesem Thread keine nicht konstruktiven Beiträge gesehen. Der erste nicht-konstruktive Offtopic-Beitrag ist meiner. Furtbichler hat einen Vorschlag gemacht und darauf hingewiesen, dass es einen Grund hat, dass 50k Einträge so lange zum selektieren brauchen. Man kann deine Argumentation mit der Aufhebung der Längenbeschränkung auch umdrehen: Warum haben die Entwickler nicht gleich die gesamte Listbox so ausgelegt, dass sie auch mit enorm vielen Einträgen funktioniert?

Furtbichler und ich sagen ja nicht dass dein Programm auf jeden Fall grundsätzlich geändert werden muss. Wenn du oder dein Auftraggeber der Meinung sind, dass in diese Listbox 50k Einträge rein müssen, dann soll es eben so sein. Wenn man aber so frei sein kann und über angebracht Kritik kurz nachdenkt, kann es bei anderen Personen ja doch unter Umständen dazu kommen, dass man merkt, dass 50k Einträge tatsächlich nicht immer Sinn machen. Wenn du aber meinst es macht hier Sinn, dann ist das doch okay. Dann macht dir keiner einen Vorwurf. Und dann solltest du niemandem einen Vorwurf machen, der dich auf eine eventuell sinnvollere Lösung hinweißt.

Liebe Grüße,
Valentin

Amateurprofi 1. Mai 2012 21:21

AW: ListBox.SelectAll dauert etwas länger
 
Zitat:

Zitat von Valle (Beitrag 1164255)
Zitat:

Zitat von Amateurprofi (Beitrag 1164249)
Und warum sollte mir das "An den Pranger" nicht gefallen.

Es ging darum, dass der Threadersteller des Threads "An den Pranger" diese Antworten nicht mögen wird.

Zitat:

Zitat von Amateurprofi (Beitrag 1164249)
[...] zweitens freue ich mich, wenn jemand, der keinerlei Information hat, was eigentlich beabsichtigt ist, Negativkommentare statt konstruktiver Hilfe bietet.

Ich habe in diesem Thread keine nicht konstruktiven Beiträge gesehen. Der erste nicht-konstruktive Offtopic-Beitrag ist meiner. Furtbichler hat einen Vorschlag gemacht und darauf hingewiesen, dass es einen Grund hat, dass 50k Einträge so lange zum selektieren brauchen. Man kann deine Argumentation mit der Aufhebung der Längenbeschränkung auch umdrehen: Warum haben die Entwickler nicht gleich die gesamte Listbox so ausgelegt, dass sie auch mit enorm vielen Einträgen funktioniert?

Furtbichler und ich sagen ja nicht dass dein Programm auf jeden Fall grundsätzlich geändert werden muss. Wenn du oder dein Auftraggeber der Meinung sind, dass in diese Listbox 50k Einträge rein müssen, dann soll es eben so sein. Wenn man aber so frei sein kann und über angebracht Kritik kurz nachdenkt, kann es bei anderen Personen ja doch unter Umständen dazu kommen, dass man merkt, dass 50k Einträge tatsächlich nicht immer Sinn machen. Wenn du aber meinst es macht hier Sinn, dann ist das doch okay. Dann macht dir keiner einen Vorwurf. Und dann solltest du niemandem einen Vorwurf machen, der dich auf eine eventuell sinnvollere Lösung hinweißt.

Liebe Grüße,
Valentin

Es ging um die Antwort "Das Problem sind die 50k Einträge. Da Fehler an der Wurzel gepackt werden sollen, setze hier an: An deinem GUI-Konzept ist was faul, denn wer scrollt schon durch 50k Einträge?"

Da wird gesagt
1) "Das Problem sind die 50k Einträge." Nachgewiesenermaßen ist das aber nicht das Problem. Das Problem ist ein schlecht implementiertes ListBox.SelectAll. Und dieses Problem ist auf unterschiedliche Weisen lösbar.
2) Da Fehler an der Wurzel gepackt werden sollen .... . Da war kein Fehler.
3) "... Denn wer scrollt sich denn schon durch 50k Einträge?" In anderen Worten heißt das wohl, daß jemand der das doch macht etwas dumm ist.

Ich halte es für nicht konstruktiv, wenn keinerlei Lösungsansatz gegeben wird, aber zwischen den Zeilen Dummheit unterstellt wird.
Wenn du es anders siehst, fein, kann ich akzeptieren.
Andere User, angefangen bei Sir Rufo und aufgehört bei bei Bummi haben mir schlicht und einfach aufgezeigt wie man das lösen kann und das nenne ich konstruktiv.

Zu
Zitat:

Warum haben die Entwickler nicht gleich die gesamte Listbox so ausgelegt, dass sie auch mit enorm vielen Einträgen funktioniert?
Vermutlich haben sie es vergessen. An anderen Stellen wird durchaus mit BeginUpdate und EndUpdate gearbeitet.
Ich gehe nicht davon aus, daß die Entwickler des Systems bewußt darauf achten, daß ihr System in bestimmten Situationen besonders langsam wird. Du?


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:24 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz