AGB  ·  Datenschutz  ·  Impressum  







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

Grid, Listview oder was auch immer nehmen

Ein Thema von p80286 · begonnen am 7. Nov 2018 · letzter Beitrag vom 8. Nov 2018
Antwort Antwort
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.656 Beiträge
 
Delphi 12 Athens
 
#1

AW: Grid, Listview oder was auch immer nehmen

  Alt 7. Nov 2018, 20:00
Wenn wirklich die Anzeige und nicht das Laden, Parsen etc. der Datei den Flaschenhals darstellt, könnte man mal den VST ins Auge fassen. Die Lernkurve ist zwar etwas steil und man muss auch vergleichsweise viel Code schreiben, dafür kann das Ding so ziemlich alles und ist pfeilschnell.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#2

AW: Grid, Listview oder was auch immer nehmen

  Alt 7. Nov 2018, 21:00
Unter Delphi 7 sollte die TListView auch den virtuellen Modus können (siehe Delphi-Referenz durchsuchenTListView.OwnerData).

Alles andere ist eigentlich überflüssig bzw. lässt sich auch ganz einfach nach Delphi 7 übertragen.

Ich habe die vorliegende Datei einfach mal etwas dupliziert um so eine Datei mit ca. 890000 Zeilen und ca. 90MB zu erhalten. Braucht etwas mehr als 6 Sekunden zum Einlesen und 40 Millisekunden zum Anzeigen. Die Anwendung selber benötigt dabei ca. 540MB Speicher
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Grid, Listview oder was auch immer nehmen

  Alt 7. Nov 2018, 22:17
Unter Delphi 7 sollte die TListView auch den virtuellen Modus können (siehe Delphi-Referenz durchsuchenTListView.OwnerData).
Uff, dann muß ich mir das mal anschauen.

Bis jetzt hab ich versucht mir einen Überblick über TDrawGrid zu verschaffen. Schon interessant, daß ich bei den Jedis was dazu gefunden habe und in der D7-Hilfe und den Samples nichts konkretes zu finden ist.
Es hat etwas gedauert, bis ich verstanden habe, daß VirtualStringTree Teil von VirtualTreeView ist. Aber jetzt hab ich auch die passende Version gefunden.

Geschwindigkeit ist schön, aber ob es jetzt 2 oder 10 sec dauert bis ich eine Anzeige habe ist nicht so wichtig. Hauptsache ich habe alle Daten im Zugriff.

Erst einmal allen die mir hier geholfen haben vielen Dank
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.368 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Grid, Listview oder was auch immer nehmen

  Alt 8. Nov 2018, 06:12
[QUOTE=p80286;1417633]
Geschwindigkeit ist schön, aber ob es jetzt 2 oder 10 sec dauert bis ich eine Anzeige habe ist nicht so wichtig. Hauptsache ich habe alle Daten im Zugriff.
Und jetzt der Klassiker:
Musst du wirklich 890.000 Datensätze visualisieren?
Alle Daten im Zugriff zu haben, kann auch bedeuten, dass du die nur für die weitere Verarbeitung benötigst. In dem Fall gibt es geeignetere Komponenten.
Peter
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#5

AW: Grid, Listview oder was auch immer nehmen

  Alt 8. Nov 2018, 06:58
[QUOTE=Jasocul;1417636]
Geschwindigkeit ist schön, aber ob es jetzt 2 oder 10 sec dauert bis ich eine Anzeige habe ist nicht so wichtig. Hauptsache ich habe alle Daten im Zugriff.
Und jetzt der Klassiker:
Musst du wirklich 890.000 Datensätze visualisieren?
Alle Daten im Zugriff zu haben, kann auch bedeuten, dass du die nur für die weitere Verarbeitung benötigst. In dem Fall gibt es geeignetere Komponenten.

Auf den hab ich gewartet

"Zugriff" war das falsche Wort!
Ich hol mal ein wenig aus. Ich hab auf meinem Rechner eine CSV-Datei mit einen etwas kryptischen Namen gefunden (TecoACDC.csv). Also hab ich diese erst einmal Open Office zum Fraß vorgeworfen, was sich prompt daran verschluckt hat (ja,es war eine ältere Version). Also hab ich aus meinem eigenen Fundus was heraus gekramt, das ich jetzt so gut es geht wetterfest machen will. Und ein einfaches "der Speicher reicht nicht" ist mir da zu wenig, vor allem wenn noch ein paar GB zur Verfügung stehen.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#6

AW: Grid, Listview oder was auch immer nehmen

  Alt 8. Nov 2018, 07:00
Und jetzt der Klassiker:
Musst du wirklich 890.000 Datensätze visualisieren?
Wenn ich es kann und es gefühlt nix kostet (im virtuellen Modus der TListView) und die Anzeige genau so schnell ist als wenn ich nur 1000 Datensätze visualisiere, warum sollte ich da etwas beschränken?

Wenn ich dafür sorge, dass bei einem gleichen String auch immer nur eine String-Referenz verwendet wird, dann sinkt bei meiner Test-Datei sogar der Speicherbedarf der Anwendung auf ca. 90MB. Die Zeit zum Einlesen erhöht sich allerdings dabei um ca. 30%.
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.368 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Grid, Listview oder was auch immer nehmen

  Alt 8. Nov 2018, 07:15
Ich habe selbst eine Anwendung, die ein paar 100.000 Zeilen darstellt. Das war in der Entwicklungsphase gut, um die Verarbeitung zu prüfen. Da es für mich ebenfalls keine Rolle spielt, wie lange die Verarbeitung dauert, habe ich das auch nie umgestellt.
Da ich bisher auch an keine Grenzen gestoßen bin, war ich zu faul, etwas zu ändern. Das ist aber bei dir anders. Deswegen musste ich den Klassiker loswerden.
Peter
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#8

AW: Grid, Listview oder was auch immer nehmen

  Alt 8. Nov 2018, 07:25


K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  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 04:20 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