AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Tutorials [Artikel] Hinzufügen von vielen Einträgen einer Listbox besc
Tutorial durchsuchen
Ansicht
Themen-Optionen

[Artikel] Hinzufügen von vielen Einträgen einer Listbox besc

Ein Tutorial von Luckie · begonnen am 12. Apr 2006 · letzter Beitrag vom 13. Apr 2006
Antwort Antwort
Benutzerbild von Luckie
Luckie
Registriert seit: 29. Mai 2002
Und wieder ein neuer Artikel auf meiner Homepage; Hinzufügen von vielen Einträgen einer Listbox beschleunigenHinzufügen von vielen Einträgen einer Listbox beschleunigen. Dies mal geht es darum, wie man das Hinzufügen von vielen Einträgen in eine List- oder Combobox beschleunigen kann.
Ein Teil meines Codes würde euch verunsichern.
 
Benutzerbild von DGL-luke
DGL-luke

 
Delphi 2006 Professional
 
#2
  Alt 13. Apr 2006, 00:49
Schöner Beitrag.
EDIT: ==entfernt==
Lukas Erlacher
  Mit Zitat antworten Zitat
Benutzerbild von mr47
mr47

 
Delphi 2005 Personal
 
#3
  Alt 13. Apr 2006, 01:23
Sehr verständlich geschrieben...
Gut verdeutlicht, was wirklich etwas bringt!




mr47
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#4
  Alt 13. Apr 2006, 07:34
Ächtz. Rechtschreibfehler bitte per PN melden.

Ich war mir erst nicht sicher, ob das "+" und das "-" deutlich genug machen, was gemeint ist. Aber es scheint ja doch verständlich zu sein.
Michael
  Mit Zitat antworten Zitat
Benutzerbild von jim_raynor
jim_raynor

 
Delphi 5 Standard
 
#5
  Alt 13. Apr 2006, 12:12
Ähmmm. Ja. Bloß mal eine blöde Frage.

Bewirkt denn ListBox1.Items.BeginUpdate und ListBox1.Items.EndUpdate nicht so ziemlich das gleiche? Ausser das deine Variante natürlich auch bei NonVCL funktioniert.
Christian Reich
  Mit Zitat antworten Zitat
Elvis

 
Delphi 2010 Professional
 
#6
  Alt 13. Apr 2006, 12:37
@Jim, genau
Außerdem könntest du die Capacity der Items vorher festlegen und wir hätten keinerlei unsinnige API Calls mehr im Code.
Wozu sich damit die Finger dreckig machen, wenn das schon in der VCL verpackt wurde?

Bei reinem NonVCL Code mag das wieder anders aussehen...
Robert Giesecke
  Mit Zitat antworten Zitat
Basilikum

 
Delphi 7 Professional
 
#7
  Alt 13. Apr 2006, 12:50
Zitat von Elvis:
Außerdem könntest du die Capacity der Items vorher festlegen und wir hätten keinerlei unsinnige API Calls mehr im Code.
dies würde leider (zumindest bei der VCL von Delphi 7) nichts bewirken, da TListBoxStrings (TListBox.Items) die Methode SetCapacity nicht überschreibt/entsprechend implementiert...

Zitat von Luckie:
[..] Man muss allerdings dazu sagen, dass ich den standard Speichermanager von Delphi benutzt haben. Man könnte noch mal ausprobieren, ob nicht andere Speichermanager etwas performanter beim Alloziieren des Speichers sind.
ich denke nicht, dass dies nennenswerte Vorteile bringen kann, da der Speicher für die ListBox-Items von Windows bzw. der WindowClass-Implementation verwaltet wird - dort hat der Delphi-MM keinen Einfluss...
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

 
Delphi 2006 Professional
 
#8
  Alt 13. Apr 2006, 13:02
Ich werde wohl noch auf die entsprechenden VCL Methoden hinweisen.
Zitat von Elvis:
Wozu sich damit die Finger dreckig machen, wenn das schon in der VCL verpackt wurde?

Bei reinem NonVCL Code mag das wieder anders aussehen...
Ich habe nicht gesagt, dass man es so benutzen muss und mit dem Hinweis auf die VCL Methoden dient der Artikel dazu die Hintergründe zu verstehen.
Michael
  Mit Zitat antworten Zitat
Elvis

 
Delphi 2010 Professional
 
#9
  Alt 13. Apr 2006, 13:10
Zitat von Basilikum:
Zitat von Elvis:
Außerdem könntest du die Capacity der Items vorher festlegen und wir hätten keinerlei unsinnige API Calls mehr im Code.
dies würde leider (zumindest bei der VCL von Delphi 7) nichts bewirken, da TListBoxStrings (TListBox.Items) die Methode SetCapacity nicht überschreibt/entsprechend implementiert....
Gerade gesehen. Hätte ich mir eigentlich gleich denken können dass wieder die Hälfte fehlt...
Robert Giesecke
  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 17:26 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