AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Ladevorgang einer Textdatei in ein TMemo beschleunigen?
Thema durchsuchen
Ansicht
Themen-Optionen

Ladevorgang einer Textdatei in ein TMemo beschleunigen?

Ein Thema von delphinub23 · begonnen am 15. Jun 2011 · letzter Beitrag vom 15. Jun 2011
Antwort Antwort
delphinub23

Registriert seit: 27. Okt 2010
Ort: Chemnitz
110 Beiträge
 
Delphi XE3 Professional
 
#1

Ladevorgang einer Textdatei in ein TMemo beschleunigen?

  Alt 15. Jun 2011, 20:31
Hallo DPler

Ich lade eine Textdatei mittels TStringList.LoadFromFile in eine TStringList. Den Inhalt möchte ich dann so schnell als möglich in ein TMemo schreiben, so dass die Form nicht hängt/freezed.

Wie könnte ich das realisieren?


mfg - dnub
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Ladevorgang einer Textdatei in ein TMemo beschleunigen?

  Alt 15. Jun 2011, 20:32
-Zuerst in eine Stringliste laden
-Memo Sperren
-Liste assignen
-Memo entsperren
Markus Kinzler
  Mit Zitat antworten Zitat
delphinub23

Registriert seit: 27. Okt 2010
Ort: Chemnitz
110 Beiträge
 
Delphi XE3 Professional
 
#3

AW: Ladevorgang einer Textdatei in ein TMemo beschleunigen?

  Alt 15. Jun 2011, 20:37
Danke für den Hinweis, aber das bringt nur wenig.
Hast du sonst noch einen Ansatz?

mfg - dnub
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Ladevorgang einer Textdatei in ein TMemo beschleunigen?

  Alt 15. Jun 2011, 20:45
Falls es eine unglaublich riesige Textdatei ist (>10/100mb), dann nur sequenziell reinladen und cachen?
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.170 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Ladevorgang einer Textdatei in ein TMemo beschleunigen?

  Alt 15. Jun 2011, 20:48
Einfach nicht TMemo nehmen. Es gibt einige alternative Komponenten die das Performancegrab des Win32-Controls vermeiden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#6

AW: Ladevorgang einer Textdatei in ein TMemo beschleunigen?

  Alt 15. Jun 2011, 20:52
Wenn es nur eine Anzeige werden soll...
Delphi-Quellcode:
  Memo1.Lines.BeginUpdate;
  Memo1.Lines.LoadFromFile();
  Memo1.Lines.EndUpdate;
Aber letztlich läuft das Laden im Hauptthread, der auch die Nachrichten bearbeitet. Es wird immer hängen, solange geladen wird. Ein Extra Thread könnte das Laden übernehmen, denke aber, dass das Einfügen ins Memo hier am meisten Zeit kostet.

Aphtons Vorschlag wird die einzige Lösung sein. Per Stream blockweise laden und zwischen den Blöcken Botschaften abarbeiten.

€ (Post dazwischen): Ok, nicht die einzige, eine schnellere Komponente geht sicher auch, wenn gefunden Meine TSynEdit läd schon schneller, obwohl da jede Menge Extra Features drin stecken. Gibt aber sicher auch Spezial-Komponenten.

Geändert von Satty67 (15. Jun 2011 um 20:56 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.116 Beiträge
 
Delphi 12 Athens
 
#7

AW: Ladevorgang einer Textdatei in ein TMemo beschleunigen?

  Alt 15. Jun 2011, 21:00
Ein TMemo ist nicht für das Laden von vielen Daten geeignet.
Soll/muß es schnell gehn, dann hilft nur das ausweichen auf eine komponente welcher schneller ist
oder besser noch, welche dei Daten nur partiell läd/anzeigt.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  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:57 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