AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

ListView Data befüllen?

Ein Thema von SneakyBagels · begonnen am 4. Jun 2017 · letzter Beitrag vom 5. Jun 2017
Antwort Antwort
SneakyBagels
(Gast)

n/a Beiträge
 
#1

AW: ListView Data befüllen?

  Alt 4. Jun 2017, 17:16
Ok diesen kleinen Unterschied kannte ich noch nicht. ich weiß zwar, dass TObjectList von TList kommt, aber dass letztes einen MemoryLeak erzeugt, wenn man die Einträge nicht explizit freigibt... wusste ich nicht.
Ich baue den Code heute Abend mal in mein Projekt ein und gucke was das wird.

Ziel soll es u.a. sein, dass ich nicht mehr direkt auf ListView Caption, SubItem usw zugreifen muss sondern das dann alles über die Liste machbar ist.
Dafür auch meine Funktion getIndexInList.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: ListView Data befüllen?

  Alt 4. Jun 2017, 17:22
Wenn Du über einen String in der Liste suchen willst, böte sich doch eine TStringList an. Da mit AddObject die Objekte rein, OwnsObjects auf true gesetzt, anschließend kannst Du mit IndexOf den passenden Eintrag ermitteln.
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
SneakyBagels
(Gast)

n/a Beiträge
 
#3

AW: ListView Data befüllen?

  Alt 4. Jun 2017, 17:29
Das mit der StringList ist echt eine Idee.
Aber dann hätte ich vermutlich wieder wildes Gecaste wie...
Delphi-Quellcode:
// mit StringList:
TListViewData(aListViewData_List.Objects[i]).Caption

// Mit TObjectList<TListViewData>
aListViewData_List.Items[i].Caption
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: ListView Data befüllen?

  Alt 4. Jun 2017, 17:30
Das verstehe ich jetzt nicht, aber ich kenne ja auch Dein Programm nicht.
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
SneakyBagels
(Gast)

n/a Beiträge
 
#5

AW: ListView Data befüllen?

  Alt 4. Jun 2017, 17:33
Man muss es nicht kennen. Das hier ist wie gesagt Testcode und mehr gibt es aktuell nicht in diesem Testprojekt.
Wenn ich TStringList statt eine TObjectList<TListViewData> verwende, dann muss ich immer wenn ich auf ein Object von TStringList zugreife diesen Aufruf mit TListViewData() casten.
Das fällt bei der TObjectList<> eben weg.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

AW: ListView Data befüllen?

  Alt 4. Jun 2017, 17:36
Achso, das liegt daran, dass es sich um eine generische Liste handelt, der Typ also von vornherein bekannt ist. Sofern es sich bei den Strings um eindeutige Werte handelt, käme auch noch ein TDictionary in Betracht, schneller geht es dann kaum noch. Allerdings muss man dann auch die Objekt selbst freigeben.
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
SneakyBagels
(Gast)

n/a Beiträge
 
#7

AW: ListView Data befüllen?

  Alt 4. Jun 2017, 17:39
Die Caption ist für jedes ListView-Item immer eindeutig. SubItems können jedoch gleiche Werte enthalten.
Beispiel

[ TestEintrag | C:\123 | Ja | Automatisch ]
[ EinAndererEintrag | C:\123 | Nein | Semi ]
[ RandomText | D:\exec | Nein | Automatisch ]

Alles, bis auf die erste Spalte, kann gleich sein.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 13:43 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