AGB  ·  Datenschutz  ·  Impressum  







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

ListItem ein- und ausblenden

Ein Thema von e-gon · begonnen am 5. Feb 2014 · letzter Beitrag vom 7. Feb 2014
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: ListItem ein- und ausblenden

  Alt 5. Feb 2014, 14:37
Dann benutzt man die Listview eben virtuell.
Sprich man arbeitet langsamer als mit der VirtualTree, komplizierter als mit der VirtualTree, aber von der Funktionsweise her ähnlich wie mit der VirtualTree.

Gut, man benutzt dafür nur die Standardkomponente, aber ist das so wichtig?
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: ListItem ein- und ausblenden

  Alt 5. Feb 2014, 14:38
Hast Du eigentlich ein generelles Problem mit anderer Leute Meinung? Ich will ja nichts gegen den VST sagen, das ist eine super Komponente, aber man muss sich auch da erst einmal einarbeiten und hat recht viel Code zu tippen.
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
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: ListItem ein- und ausblenden

  Alt 5. Feb 2014, 14:50
Hast Du eigentlich ein generelles Problem mit anderer Leute Meinung?
Nein, aber eine Begründung für den Vorschlag sehe ich auch nirgends, insofern habe ich auch keine Möglichkeit dazu irgendetwas mir zu denken. Ich sehe nur keinen Sinn darin.

Ich will ja nichts gegen den VST sagen, das ist eine super Komponente, aber man muss sich auch da erst einmal einarbeiten und hat recht viel Code zu tippen.
Einarbeiten etwas ja, aber das gilt für den virtuellen Modus der Listview genauso. Und viel mehr Code ist es definitiv nicht...

Hinzufügen eines Eintrags ist eine Zeile Code. Genau wie bei einer virtuellen ListView.
NodeDataSize muss man setzen. Eine Zeile mehr, geht aber auch im Objektinspektor.
OnGetText muss man implementieren. Das gilt für die TListView mit OnData aber auch.

Insgesamt ähnelt sich die Menge an Code sehr.

Bei der VirtualTree muss ich nun aber nur durchgehen und kann einfach mit IsVisible umschalten welche Knoten sichtbar sind. Das ist sehr viel weniger Aufwand als alles neu zu befüllen oder ähnliches und ist obendrein auch viel schneller.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#14

AW: ListItem ein- und ausblenden

  Alt 5. Feb 2014, 15:27
Nein, aber eine Begründung für den Vorschlag sehe ich auch nirgends
Erstens muss man keinen Alternativvorschlag begründen, um ihn als mindestens gleichwertig zu erachten und zweitens ist es einfach mal so, das eine TListView zu verwenden heißt:
- Mit Bordmitteln zu arbeiten, also keine extra Komponente,
- kein extra Einarbeiten,
- kein potentielles Einstellen des Supports (was macht Mike Lischke eigentlich heute?)
- keine potentiellen versteckten Fehler, die so mancher Freewarekomponente zueigen ist

sondern einfach: die paar Zeilen hinschmeißen und fertig.
Zitat:
insofern habe ich auch keine Möglichkeit dazu irgendetwas mir zu denken. Ich sehe nur keinen Sinn darin.
Na, dann benutz deinen Kopf mal zum 'denken'. Das geht bei Dir doch sehr gut. Denn dann siehst Du auch irgendwann einen Sinn an den Vorschlägen anderer.
Zitat:
Insgesamt ähnelt sich die Menge an Code sehr.
Irgendwoher muss Lischke das ja haben.

Also nochmal: Wenn jemand einen anderen Vorschlag macht, ohne ihn zu begründen, dann ist der erst einmal gleichwertig. Wenn *Du* Dir dabei nichts denken kannst, dann ist das *dein* Defizit, was bedauerlich, aber eben temporär.

Edit: Das Durchlaufen durch eine VST, um die Knoten sichtbar/unsichtbar zu machen, ist nicht gerade im Sinne des Viewmodel-Gedankens, das nur mal am Rande. Das ist es doch viel einfacher, im Viewmodel eine Liste der sichtbaren Items zu erstellen, das im virtuellen Modus an die TListView zu flanschen und fertig (geht vermutlich auch mit VST).

Wenn man allerdings Zeit hat, mit dem Layout rumzuspielen, ist eine VST generell vorzuziehen.

Geändert von Furtbichler ( 5. Feb 2014 um 15:36 Uhr)
  Mit Zitat antworten Zitat
e-gon

Registriert seit: 7. Jul 2003
Ort: Stuttgart
163 Beiträge
 
Delphi 6 Enterprise
 
#15

AW: ListItem ein- und ausblenden

  Alt 7. Feb 2014, 09:46
Hallo!

Ich habe das ganze nun mit einem virtuellen ListView realisiert. VirtualTree wäre bestimmt auch gut geeignet gewesen und ich hätte auch nicht davor zurückgeschreckt eine weitere Komponente einzubinden, das Ko-Kriterium war allerdings dass VirtualTree auch noch ThemeManager benötigt hätte...

Gruß und danke an alle!
e-gon
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.648 Beiträge
 
Delphi 11 Alexandria
 
#16

AW: ListItem ein- und ausblenden

  Alt 7. Feb 2014, 11:22
das Ko-Kriterium war allerdings dass VirtualTree auch noch ThemeManager benötigt hätte...
Eigentlich braucht die zwar nicht mehr oder weniger als andere Komponenten, aber wenn die Geschwindigkeit so wie du es hast ausreicht, dann ist ja alles erledigt.

Ein Tutorial zur VirtualStringTree steht aber bei mir auf der ToDo.
Sebastian Jänicke
AppCentral
  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 11:53 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