AW: ListView - Text auslesen
Gerne Doch :
Also Ich arbeite mit einem TListView Namens "ListView_DB" für diesen gibt es im "Type" bereich die folgende Dekleration:
Code:
Dazu muss ich sagen das der Listview nicht per Hand erstellt wurde, sondern einfach per Drag and Drop reingezogen und einer "BindingList" und "Live-Bindings" mit der Datenbank verknüpft ist.
ListView_DB: TListView;
Danach folgt weiter unten die procedure die ein Button auslöst -> nur aktuell zum testen gedacht.
Code:
procedure TForm_Main_Main.btn_del_from_DBClick(Sender: TObject);
var i : Integer; Item: TListItem; begin showmessage(ListView_DB.Items.AppearanceItem[1].Text); Item := ListView_DB.Items.Add; item.caption := Format('Main Item &d' , [1]); end; Das ist nun auch der Code der so 1 zu 1 im Quellcode seht :) Wenn wir über den Punkt des erstellens der Subitems weg sind, würde ich diese gerne per live-binding einbinden -> nur als Leitfaden wo ich hin möchte. Wenn irgend etwas relevantes fehlt bitte bescheid geben:shock: |
AW: ListView - Text auslesen
Und nein ich kenne den unterschied nicht ! :D
Wie gesagt 40 Stunden -> mehr Erfahrung habe ich nicht. Danke für eure Geduld :-P |
AW: ListView - Text auslesen
Zitat:
Delphi-Quellcode:
oder eher
VCL.Forms, VCL.Controls
Delphi-Quellcode:
. Wenn ersteres, dann sprechen wir von der gleichen Art von Projekt. Wenn letzteres, dann ist es FMX und ich bin raus. Auch mein Beispiel ist dann zum Großteil ungültig würde ich sagen. Lediglich die Art wie ich es gemacht habe kannst du dann übernehmen.
FMX.Forms, FMX.Controls
Das wäre mal ein Anhaltspunkt um das noch sicherzustellen. |
AW: ListView - Text auslesen
Habe gerade nochmal drübergelesen. Dein SourceCode sagt es eigentlich schon. Habe es gerade ausprobiert. Du hast doch eine FMX Anwendung. Dann ist es klar, warum mein Beispiel nicht funktioniert. Da wäre jetzt höchstens noch die Frage, ob es unbedingt für den Anfang eine FMX Anwendung sein muss.
|
AW: ListView - Text auslesen
es ist FMX ... :(
Danke dir trotzdem ! - was ist im groben der unterschied zwischen den beiden ? :) |
AW: ListView - Text auslesen
Naja - ich habe nun schon alles mit FMX gemacht und mir fehlen nur noch 2-3 Punkte dann bin ich durch.
Von daher dachte ich, ich bring das erstmal zuende bevor ich wieder alles über den haufen werfe :) |
AW: ListView - Text auslesen
VCL = nur Windows
FMX = plattformübergreifend (also auch iOS und Android) So ganz grob. :-D Du kannst unter FMX auch schönere Animationen machen als unter VCL usw. Aber ich habe mich damit wie gesagt noch nicht beschäftigt. Daher kann ich an dieser Stelle auch nicht mehr weiterhelfen. |
AW: ListView - Text auslesen
Multiplatform ist leider unumgänglich -> Deswegen habe ich erst mit Delphi angefangen.
Ich danke dir trotzdem für deine Zeit! :) Damit wären wir wieder bei meinem alten Problem : Wie füge ich einem FMX.TListView Subitem hinzu ?:-D Gruß Gerri |
AW: ListView - Text auslesen
Fals du noch nicht weitergekommen bist. Subitems gibt es in der FMX ListView nicht,
jedenfalls nicht in der selben Begrifflichkeit wie in VCL. Ist ein bischen aufwendiger das Ganze, aber dafür individualisierbarer. Ich hoffe ich gebe das richtig wieder, aber in FMX gibt es nicht nur DAS Item in einer Listview, sondern ein Hauptobjekt das als Container dient aber selbst keine Daten zur Anzeige bereithält und beliebig viele andere Objekte mit den einzelnen Bedürfnissen (Buttons, Text, Bilder usw.). Laut deinem Screenshot hast du das ja schon mit Text1, Text2, Text3 als DynamicAppearance unter ItemAppearance eingestellt, sonst würde es da ja glaub ich nicht so drin stehen (können). Ansonsten hier nochmal vom Schöpfer: DynamicAppearance. Anbei das einfachste Hinzufügen und Auslesen der Items. Gibt bestimmt noch unzählige andere Wege damit zu arbeiten. Hinzufügen:
Delphi-Quellcode:
2x Auslesen
procedure TForm1.FormShow(Sender: TObject);
var item: TListViewItem; textItem: TListItemText; begin item := ListView1.Items.Add; textItem := item.Objects.FindObjectT<TListItemText>('Text1'); textItem.Text := 'Item 1 Hallo 1'; textItem := item.Objects.FindObjectT<TListItemText>('Text2'); textItem.Text := 'Item 1 Hallo 2'; textItem := item.Objects.FindObjectT<TListItemText>('Text3'); textItem.Text := 'Item 1 Hallo 3'; item := ListView1.Items.Add; textItem := item.Objects.FindObjectT<TListItemText>('Text1'); textItem.Text := 'Item 2 Hallo 1'; textItem := item.Objects.FindObjectT<TListItemText>('Text2'); textItem.Text := 'Item 2 Hallo 2'; textItem := item.Objects.FindObjectT<TListItemText>('Text3'); textItem.Text := 'Item 2 Hallo 3'; end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; begin for i := 0 to ListView1.Items.Count - 1 do begin ShowMessage(ListView1.Items[i].Objects.FindObjectT<TListItemText>('Text3').Text); end; end;
Delphi-Quellcode:
procedure TForm1.ListView1ItemClick(const Sender: TObject;
const AItem: TListViewItem); begin ShowMessage(AItem.Objects.FindObjectT<TListItemText>('Text3').Text); end; |
AW: ListView - Text auslesen
Hi Towmuz!
du bist mein Retter-> Genau das brauchte ich :thumb: Es läuft so wie ich es wollte bzw erwartet habe :) Danke an alle die mir versucht haben zu helfen und besonderen dank an Towmuz! Thema kann geschlossen werden. Viele Grüße Gerri |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:44 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