Listview Farbige Einträge

Rund um die LCL und andere Komponenten
Antworten
Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1496
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Listview Farbige Einträge

Beitrag von corpsman »

Servus ich bins schon wieder *g*.

Ich habe ne Listview und will entsprechend einer Spalte die jeweilige Zeilenfarbe ändern, unter Windows funktioniert dieser Code 1a

Code: Alles auswählen

 
Procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; Var DefaultDraw: Boolean);
Begin
  If assigned(item) Then Begin
    Case item.SubItems[IndexStatus] Of
      TextModifiedPropertyChangeOnly, TextModified: ListView1.canvas.Font.Color := clblue;
      TextAdded: ListView1.canvas.Font.Color := clPurple;
      TextMissing: ListView1.canvas.Font.Color := clMaroon;
    Else
      ListView1.canvas.Font.Color := clblack;
    End;
  End
  Else Begin
    ListView1.canvas.Font.Color := clblack;
  End;
End;
 


Nur unter Linux leider nicht, muss ich da noch was machen ?

habe hier das neue Kubunt 16.04
--
Just try it

Mathias
Beiträge: 6162
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Listview Farbige Einträge

Beitrag von Mathias »

Wen du deine komplette Source in den Anhang stellst, könnte ich es mit Linux Mint testen.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1496
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: Listview Farbige Einträge

Beitrag von corpsman »

Das angehängte Beispiel müsste den Fehler zeigen, hab grad kein Windows mehr zum Testen da *g*
Dateianhänge
Beispiel.zip
(2.01 KiB) 58-mal heruntergeladen
--
Just try it

Mathias
Beiträge: 6162
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Listview Farbige Einträge

Beitrag von Mathias »

Entweder ist dies ein Bug, oder die ListView ist für Linux noch nicht fertig implementiert.
Dieser einfache Code geht auch nur unter Windows, unter Linux bleibt alles weiss.

Code: Alles auswählen

procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; var DefaultDraw: boolean);
begin
  if Item.Index mod 2 = 1 then begin
    ListView1.Canvas.Brush.Color := clRed;
  end else begin
    ListView1.Canvas.Brush.Color := clYellow;
  end;
end;
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1496
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: Listview Farbige Einträge

Beitrag von corpsman »

Am We ist Stuttgarter Lazarus treffen, mal schaun welche Kompetenzen da vorbeischaun, sollte jemand ne Lösung kennen poste ich es, sonst mache ich dann nen Bug Report auf.
--
Just try it

BeniBela
Beiträge: 308
Registriert: Sa 21. Mär 2009, 17:31
OS, Lazarus, FPC: Linux (Lazarus SVN, FPC 2.4)
CPU-Target: 64 Bit

Re: Listview Farbige Einträge

Beitrag von BeniBela »

Ich habe da ein ganz eigenes listview für geschrieben

Antworten