AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi ListBox.SelectAll dauert etwas länger
Thema durchsuchen
Ansicht
Themen-Optionen

ListBox.SelectAll dauert etwas länger

Ein Thema von Amateurprofi · begonnen am 29. Apr 2012 · letzter Beitrag vom 1. Mai 2012
Antwort Antwort
Seite 2 von 2     12   
EWeiss
(Gast)

n/a Beiträge
 
#11

AW: ListBox.SelectAll dauert etwas länger

  Alt 29. Apr 2012, 15:46
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

Geändert von EWeiss (29. Apr 2012 um 15:55 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#12

AW: ListBox.SelectAll dauert etwas länger

  Alt 29. Apr 2012, 16:24
Ich hätte noch einen On Topic - Vorschlag, solange die Anzahl der Einträge unterhalb von 65535 bleibt, Latenz= 0, statt Listbox.SelectAll :
   SendMessage(Listbox.Handle, LB_SELITEMRANGE, Longint(True), (Listbox.count-1) * 65536 );
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.067 Beiträge
 
Delphi XE2 Professional
 
#13

AW: ListBox.SelectAll dauert etwas länger

  Alt 30. Apr 2012, 12:21
Ich hätte noch einen On Topic - Vorschlag, solange die Anzahl der Einträge unterhalb von 65535 bleibt, Latenz= 0, statt Listbox.SelectAll :
   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!
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat
Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.067 Beiträge
 
Delphi XE2 Professional
 
#14

AW: ListBox.SelectAll dauert etwas länger

  Alt 30. Apr 2012, 12:30
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!
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat
Benutzerbild von Valle
Valle

Registriert seit: 26. Dez 2005
Ort: Karlsruhe
1.223 Beiträge
 
#15

AW: ListBox.SelectAll dauert etwas länger

  Alt 30. Apr 2012, 12:56
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.

[...] 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
Valentin Voigt
BOFH excuse #423: „It's not RFC-822 compliant.“
Mein total langweiliger Blog

Geändert von Valle (30. Apr 2012 um 12:58 Uhr)
  Mit Zitat antworten Zitat
Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.067 Beiträge
 
Delphi XE2 Professional
 
#16

AW: ListBox.SelectAll dauert etwas länger

  Alt 1. Mai 2012, 22:21
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.

[...] 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?
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 23:46 Uhr.
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