Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Kann mir das mal jemand erklären ??


matze - Sa 19.10.02 20:57
Titel: Kann mir das mal jemand erklären ??
Hallo !!!

Es gibt eine Kompo, die ist standardmässig bei delphi dabei, wenn man bei der die option STYLE auf REPORT stellt, bekommt man so ein Feld, mit Spalten.

Das mit der Beschreibung ist jetzt ein bisserl doof, aber ich weiss nicht, wie die Kompo heisst !!

Kann mir jemand bitte mal erklären, wie ich da Palten einfüge und die dann Zeilenwiese füllen und aulesen kann. Ich hab mir die OH dazu druchgelesen, aber ich peils nicht !!!


Delete - Sa 19.10.02 21:42

Hat dieses Ding auch einen Namen?
Ich tippe mal auf "TListView".
Eine richtig coole Delphi-Version (so wie meine 8)) zeigt dir den Namen z.B. an, wenn du einfach den Mauszeiger draufhältst. Oder wenn du die Komponente einmal anklickst und F1 drückst, erscheint das passende Hilfethema.

Nehmen wir mal an, es ist die Listview; dann klick die Komponente mal doppelt an, und -schwupp!- bist du im Spalteneditor (hach, wie des klingt ...). Du klickst auf den bis dahin einzig aktiven Button und -du wirst es nicht glauben- hast damit eine Spalte angelegt. :shock:
Im Objektinspektor kannst du nun die Breite einstellen, eine Caption vergeben und noch andere tolle Dinge machen.

Abhängig von der Anzahl der Spalten füllst du die Zeile nun, wobei der Inhalt der ersten Spalte das eigentliche Hauptitem ist. Ein Beispiel für 3 Spalten:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
var
  li : TListItem;
begin
  li := Listview1.Items.Add;
  li.Caption := 'matze';  // <-- erste Spalte

  li.SubItems.Add('rafft´s'); // <-- zweite Spalte
  li.SubItems.Add('nicht'); // <-- usw.
end;

Wenn du dich mit Stringlisten auskennst, müsste dir das Füllen der restlichen Spalten bekannt vorkommen. Und genau so greifst du dann auch die einzelnen Items ab.

Quelltext
1:
2:
3:
4:
5:
with Listview1 do
  if(Selected <> nil) then
    ShowMessage(Selected.Caption + #13#10 +
      Selected.SubItems[0] + #13#10 +
      Selected.SubItems[1]);

:idea:


matze - So 20.10.02 10:22

schlonz - das ging ja runter wie öl :wink:

Das man den auszeiger drüber halten muss weiss ich. Nur sind bei mir der InternetPC und der PC auf dem Delphi installiert ist nicht indentisch !!
Das heisst: wenn ich was im auq poste muss ich das mehr oder weniger ausm gedächtnis machen !!!

Aber trotzdem mal danke für deine hilfe !!! ich werds mal testen !!