AGB  ·  Datenschutz  ·  Impressum  







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

ListView - Text auslesen

Ein Thema von Gerri · begonnen am 28. Sep 2017 · letzter Beitrag vom 4. Okt 2017
 
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#18

AW: ListView - Text auslesen

  Alt 29. Sep 2017, 14:42
Hallo Gerri,

ich habe dir mal schnell ein kleines Beispiel zusammengeklickt mit dem du etwas rumspielen kannst. Vielleicht bringt es dich ja weiter.

Deine Zeile ListView1.Items[1].Subitem[3]; sieht soweit OK aus. Allerdings heißt das nicht, dass du nicht evtl. vergessen hast, überhaupt (Sub)Items hinzuzufügen.



Kurze Erklärung zum Programm:

Beim Start der Anwendung wird im OnShow Event der Form der Header der TListView Komponente erzeugt. Danach werden ein paar Items hinzugefügt. Das ist ein Random Wert zwischen 1 und 100.

In der SpinEdit Komponente kannst du auswählen, welcher Text in dem Label unter dem ListView angezeigt werden soll.

Code:
0 = Text vom Hauptitem
1 = Text vom Subitem 1
2 = Text vom Subitem 2
3 = Text vom Subitem 3
Im Anhang ist ein kompiliertes Beispiel enthalten. Da du im Eröffnungspost angegeben hast, dass du Delphi Berlin verwendest, sollte es aber kein Problem für dich sein, die Anwendung erneut (mit Änderungen) zu kompilieren.


Anbei mal noch der SourceCode und ein Bild der Anwendung, damit andere da direkt Einblick haben ohne sich das ganze Projekt laden zu müssen.


Viel Spaß damit. Wenn du Fragen dazu hast ...

Delphi-Quellcode:
unit Main;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.StdCtrls, Vcl.Samples.Spin, System.UITypes;

type
  TfrmListViewSample = class(TForm)
    lv1: TListView;
    Label1: TLabel;
    btnGetItemText: TButton;
    seColumnSelector: TSpinEdit;
    lblItemCaption: TLabel;
    procedure FormShow(Sender: TObject);
    procedure btnGetItemTextClick(Sender: TObject);
  private
    procedure CreateHeader;
    procedure CreateItems;
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  frmListViewSample: TfrmListViewSample;

implementation

{$R *.dfm}

procedure TfrmListViewSample.FormShow(Sender: TObject);
begin
  CreateHeader;
  CreateItems;
end;

procedure TfrmListViewSample.btnGetItemTextClick(Sender: TObject);
begin
  if Assigned(lv1.Selected) then
  begin
    if (seColumnSelector.Value = 0) then
      lblItemCaption.Caption := lv1.Selected.Caption
    else
      lblItemCaption.Caption := lv1.Selected.SubItems[seColumnSelector.Value - 1];
  end
  else
  begin
    MessageDlg('Es wurde kein Item ausgewählt.', mtWarning, [mbOK], 0);
  end;
end;

procedure TfrmListViewSample.CreateHeader;
var
  i: Integer;
  Column: TListColumn;
begin
  for i := 0 to 3 do
  begin
    Column := lv1.Columns.Add;
    Column.Caption := Format('Column %d', [i]);
    Column.Width := 75;
  end;
end;

procedure TfrmListViewSample.CreateItems;
var
  Item: TListItem;
  i: Integer;
begin
  for i := 0 to Random(100) + 1 do // Damit wenigstens immer 1 Item hinzugefügt wird
  begin
    Item := lv1.Items.Add;
    Item.Caption := Format('Main Item %d', [i]);
    Item.SubItems.Add(Format('Subitem %d.1', [i]));
    Item.SubItems.Add(Format('Subitem %d.2', [i]));
    Item.SubItems.Add(Format('Subitem %d.3', [i]));
  end;
end;
end.
Angehängte Grafiken
Dateityp: png ListViewSample.png (8,4 KB, 17x aufgerufen)
Angehängte Dateien
Dateityp: zip ListViewSample.zip (974,3 KB, 14x aufgerufen)
  Mit Zitat antworten Zitat
 

 

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 10:41 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