AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Listbox.OnDrawItem: wenn Dateiendung wechselt, andere Farbe
Thema durchsuchen
Ansicht
Themen-Optionen

Listbox.OnDrawItem: wenn Dateiendung wechselt, andere Farbe

Ein Thema von juergen · begonnen am 3. Jun 2010 · letzter Beitrag vom 14. Jun 2010
 
David Martens

Registriert seit: 29. Sep 2003
205 Beiträge
 
Delphi XE Enterprise
 
#13

AW: Listbox.OnDrawItem: wenn Dateiendung wechselt, andere Farbe

  Alt 11. Jun 2010, 13:02
Also ich weis nicht was du falsch machst? Hier mein kleiner Test:

ListBox1.Style := lbOwnerDrawVariable; // im OI

Delphi-Quellcode:
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin
  if Index > 0 then
  begin
    if LowerCase(ExtractFileExt(ListBox1.Items[Index - 1])) = LowerCase(ExtractFileExt(ListBox1.Items[Index])) then
    begin
      // Farbe für gleich setzten
      ListBox1.Canvas.Brush.color := clWhite;
    end
    else
    begin
      // Farbe für ungleich setzten
      ListBox1.Canvas.Brush.color := clAqua;
    end;
  end
  else
  begin
    if Index = 0 then
    begin
      // Farbe für erstes Element setzten
      ListBox1.Canvas.Brush.color := clRed;
    end;
  end;

  ListBox1.Canvas.FillRect(Rect);
  ListBox1.Canvas.Font.Color := clBlack;
  ListBox1.Canvas.TextOut(Rect.Left, Rect.Top, ListBox1.Items[Index]);
end;
Und das Ergebnis sieht so aus:
Angehängte Grafiken
Dateityp: png Bild.PNG (6,6 KB, 17x 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 07:17 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