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 Problem mit Listview mit 3 Spalten und Bildern (https://www.delphipraxis.net/72032-problem-mit-listview-mit-3-spalten-und-bildern.html)

SeeAAL 24. Jun 2006 09:12


Problem mit Listview mit 3 Spalten und Bildern
 
moin moin

also ich hab eine Listview mit 3 spalten . in der ersten spalte steht der text so wie er soll. in der 2. und 3. spalte soll aber je nach fall ein hacken erscheinen. Also ob eine option gesetzt ist oder nicht.

Das geht doch bestimmt ganz einfach oder? :D

xaromz 24. Jun 2006 09:35

Re: Problem mit Listview mit 3 Spalten und Bildern
 
Hallo,

klar geht das ganz einfach. Du setzt als SubItem gegebenenfalls ein kleines "A". Das ist ein Haken beim Font "Webdings". Jetzt musst Du nur noch das Item selbst zeichnen. Dazu erstellst Du ein Ereignis "OnCustomDrawSubItem", und wenn das entsprechende Item vorbeikommt, stellst Du einfach den Font um.
Das sollte es gewesen sein.

Beispiel:
Delphi-Quellcode:
procedure TForm1.ObjectsListCustomDrawSubItem(Sender: TCustomListView;
  Item: TListItem; SubItem: Integer; State: TCustomDrawState;
  var DefaultDraw: Boolean);
begin
  if SubItem = 4 then // Drittes SubItem (erstes SubItem = 2)
    Sender.Canvas.Font.Name := 'Webdings';
end;
Gruß
xaromz

SeeAAL 25. Jun 2006 07:58

Re: Problem mit Listview mit 3 Spalten und Bildern
 
danke danke

das hat mir geholfen, wusste zwar erst nicht was ich mit den subitems anfangen sollte aber die delphi hilfe hat mir da geholfen :D

habs auch geschafft ein X einzufügen :D

nun möchte ich aber gerne das der hacken grün und das X rot wird. habe zwar rum probiert , aber ebtweder bekomme ich alles in einer farbe oder sonst ein durcheinander. das ist doch bestimmt genauso einfach.

xaromz 25. Jun 2006 10:37

Re: Problem mit Listview mit 3 Spalten und Bildern
 
Hallo,
Zitat:

Zitat von SeeAAL
nun möchte ich aber gerne das der hacken grün und das X rot wird. habe zwar rum probiert , aber ebtweder bekomme ich alles in einer farbe oder sonst ein durcheinander. das ist doch bestimmt genauso einfach.

Wie wär's hiermit:
Delphi-Quellcode:
procedure TForm1.ObjectsListCustomDrawSubItem(Sender: TCustomListView;
  Item: TListItem; SubItem: Integer; State: TCustomDrawState;
  var DefaultDraw: Boolean);
begin
  if SubItem = 4 then // Drittes SubItem (erstes SubItem = 2)
  begin
    if Item.SubItems[SubItem - 2] = 'a' then // Haken
    begin
      Sender.Canvas.Font.Name := 'Webdings'; // Schriftart
      Sender.Canvas.Font.Color := clGreen; // Grün
    end else
      if Item.SubItems[SubItem - 2] = 'X' then // Rot
        Sender.Canvas.Font.Color := clRed;
  end;
end;
Gruß
xaromz
// Edit: Fehler ausgebessert

SeeAAL 26. Jun 2006 04:41

Re: Problem mit Listview mit 3 Spalten und Bildern
 
ja ja man sollte erste lesen. ich probier so deinen code aus , und irgenwie war immer noch alles rot. habe danne rstmal wieder alles ausprobiert , bis ich dann auf den 2. blick gesehen habe dasdu auch 2. clred geschrieben hast :D

aber nun gehts danke dir :-) und das ganze sogar mit 3 spalten voller hacken und x'se :D

xaromz 26. Jun 2006 09:29

Re: Problem mit Listview mit 3 Spalten und Bildern
 
Hallo,
Zitat:

Zitat von SeeAAL
...bis ich dann auf den 2. blick gesehen habe dasdu auch 2. clred geschrieben hast :D

Hab's ausgebessert.

Gruß
xaromz


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:23 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 by Thomas Breitkreuz