Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Listview + Stateindex (https://www.delphipraxis.net/34655-listview-stateindex.html)

Piro 26. Nov 2004 01:09


Listview + Stateindex
 
Liste der Anhänge anzeigen (Anzahl: 1)
Moin,

kann mir mal bitte einer erklären, warum der Listvieweintrag "Computer" mit Stateindex für das Bild nicht neben dem Symbol steht?
Sondern auf der gleichen Höhe wie die Unterpunkte. siehe Bild.

Ich hoffe es weiß einer?

Danke. Sven

Dax 26. Nov 2004 06:22

Re: Listview + Stateindex
 
Wahrscheinlich ist "Computer" bei dir ein Parent-Knoten. Mit dem Ausrücken des Bildchens versucht das TreeView nur, eben das zu verdeutlichen.

Piro 26. Nov 2004 10:18

Re: Listview + Stateindex
 
Na ja, es ist aber ein Listview und deshalb auch kein Parentknoten. Ich habe schon viele Beispiele gesehen, wo das klappt. Bei Sandra oder Everest (beides Diagnosetools).

Es muss doch eine Möglichkeit geben?

Matze 26. Nov 2004 10:40

Re: Listview + Stateindex
 
Normalerweise sollte das schon gehen, hast du mal den Code da, wo du die Items hinzufügst?

Piro 26. Nov 2004 13:53

Re: Listview + Stateindex
 
hier der Code:

Delphi-Quellcode:
function listview_erstellen: boolean;
var
 ListItem : TListItem;
 sOwner, sOrganization: string;
begin
 GetOwnerAndCompanyName(sOwner, sOrganization);
 with frm_main.lv_systeminfo do
 begin
   ListItem := Items.Add;
   ListItem.Caption := 'Computer';
   ListItem.StateIndex := 0;
   ListItem.ImageIndex := -1;

   ListItem := Items.Add;
   ListItem.Caption := 'Betriebssystem';
   ListItem.SubItems.Add(DataModule1.PJSysInfo1.OSProductName + ' ' +
                         DataModule1.PJSysInfo1.OSProductType);
   ListItem.ImageIndex := 1;

   ListItem := Items.Add;
   ListItem.Caption := 'Version';
   ListItem.SubItems.Add(GetVersion);
   ListItem.ImageIndex := 2;

   ListItem := Items.Add;
   ListItem.Caption := 'CPU';
   ListItem.SubItems.Add(GetProzessorName);
   ListItem.ImageIndex := 3;

   ListItem := Items.Add;
   ListItem.Caption := 'Arbeitsspeicher';
   ListItem.SubItems.Add(GetMemoryInfo);
   ListItem.ImageIndex := 4;

   ListItem := Items.Add;
   ListItem.Caption := 'OS Service Pack';
   ListItem.SubItems.Add(DataModule1.PJSysInfo1.OSServicePack);
   ListItem.ImageIndex := 5;

   ListItem := Items.Add;
   ListItem.ImageIndex := -1;

   ListItem := Items.Add;
   ListItem.Caption := 'Netzwerk';
   ListItem.StateIndex := 6;
   ListItem.ImageIndex := -1;

   ListItem := Items.Add;
   ListItem.Caption := 'Computername';
   ListItem.SubItems.Add(DataModule1.PJSysInfo1.ComputerName);
   ListItem.ImageIndex := 0;

   ListItem := Items.Add;
   ListItem.Caption := 'Benutzername';
   ListItem.SubItems.Add(DataModule1.PJSysInfo1.UserName);
   ListItem.ImageIndex := 7;

   ListItem := Items.Add;
   ListItem.Caption := 'Arbeitsgruppe / Domäne';
   ListItem.SubItems.Add(GetDomainName);
   ListItem.ImageIndex := 8;

   ListItem := Items.Add;
   ListItem.Caption := 'IP Adresse';
   ListItem.SubItems.Add(GetIpAddress);
   ListItem.ImageIndex := 9;

   ListItem := Items.Add;
   ListItem.Caption := 'MAC Adresse';
   ListItem.SubItems.Add(GetMACAddress);
   ListItem.ImageIndex := 9;

   ListItem := Items.Add;
   ListItem.ImageIndex := -1;

   ListItem := Items.Add;
   ListItem.Caption := 'Anzeige';
   ListItem.StateIndex := 10;
   ListItem.ImageIndex := -1;

   ListItem := Items.Add;
   ListItem.Caption := 'Grafikkarte';
   ListItem.SubItems.Add('keine Angabe');
   ListItem.ImageIndex := 10;

   ListItem := Items.Add;
   ListItem.Caption := 'Auflösung';
   ListItem.SubItems.Add(GetResolution);
   ListItem.ImageIndex := 10;

   ListItem := Items.Add;
   ListItem.ImageIndex := -1;

   ListItem := Items.Add;
   ListItem.Caption := 'Lizensinformationen';
   ListItem.StateIndex := 11;
   ListItem.ImageIndex := -1;

   ListItem := Items.Add;
   ListItem.Caption := 'Registrierter Eigentümer';
   ListItem.SubItems.Add(sOwner);
   ListItem.ImageIndex := 12;

   ListItem := Items.Add;
   ListItem.Caption := 'Registrierte Organisation';
   ListItem.SubItems.Add(sOrganization);
   ListItem.ImageIndex := 12;

   ListItem := Items.Add;
   ListItem.Caption := 'Produkt ID';
   ListItem.SubItems.Add(GetProductID);
   ListItem.ImageIndex := 11;
 end
end;

...
procedure Tfrm_main.FormShow(Sender: TObject);
begin
 lv_systeminfo.Clear;
 listview_erstellen;
end;
Ich hoffe es hilft dir. Und weißt die Lösung

Piro 26. Nov 2004 14:48

Re: Listview + Stateindex
 
Liste der Anhänge anzeigen (Anzahl: 1)
hier nochmal ein Bild aus einem anderem Programm, wo die Einträge so sind, wie ich sie haben möchte.

Matze 26. Nov 2004 20:56

Re: Listview + Stateindex
 
Liste der Anhänge anzeigen (Anzahl: 1)
Geht das sicher mit der ListView? Ich habe es nicht hinbekommen, bei mir sieht's immer aus, wie bei dir (s. Anhang) :?

Piro 26. Nov 2004 22:36

Re: Listview + Stateindex
 
Na vielleicht soll es dann doch nicht sein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:29 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