![]() |
Filelist Zeile färben
Also ich will in meiner Filelist (aus der rubrik win 3.1 also filelistbox ^^) jede zweite Zeile in einer anderen Farbe haben ... also
zeile 1 grün zeile 2 rot zeile 3 grün zeile 4 rot ... da ich ein anfänger bin frag ich euch mal :P hoffe ihr könnt mir helfen! :roll: (ich hab schon gesucht und so aber naja glaub nich das was richtiges dabei war ^^...) - ich würd ja sagen man kann das über jeden ungerade und gerade eintrag in der filelist machen aber wie?? :( MfG PiQ |
Re: Filelist Zeile färben
Herzlich willkommen in der Delphi-PRAXiS, PiQ.
Wenn du die Komponente nennst, mit der du arbeitest und auch die von dir verwendete Delphi-Version in dein DP-Profil einträgst, dann kann man dir viel besser helfen. Freundliche Grüße vom marabu |
Re: Filelist Zeile färben
Du ratterst mit einer for-Schleife jeden Eibntrag durch, und färbst ihn per Überprüfung mit MOD farbig ein.
|
Re: Filelist Zeile färben
kannst dus mir vielleicht iwie erklären oda gleich hinschrieben wie?! hab mal hier:
![]() wie gesagt bin ein anfänger :cry: |
Re: Filelist Zeile färben
hat keiner ne idee? :cry:
|
Re: Filelist Zeile färben
Zitat:
Da es nur zwei Farben sind genügt ein einfaches ![]() Und wozu eine for-Schleife? :gruebel:
Delphi-Quellcode:
Du kannst dafür das Ereignis
If Odd(Index) then
MaleRot else MaleGrün ![]() ![]() ![]() ![]() Das funkt aber net mit der TFileListBox Kompo, dazu selber eine ![]() [dp]Grüßle[/dp]! |
Re: Filelist Zeile färben
Delphi-Quellcode:
was stimmt daran nicht ? ich habe jetz nur das bei mir drin stehen. hab das mal mit einem label simuliert aber die farbe ändert sich trotzdem nicht - am anfang ist es rot aber es wird nie grün wenn ich in meiner listbox einen 1./2./3./4. eintrag wähle. :cry:
procedure TWindow.FormCreate(Sender: TObject);
begin If Odd(listbox1.itemindex) then label4.Color := clred else label4.Color := clgreen; end; und dann noch: wie ist den das mit dem ondrawitem gemeint? weil ich kann dann da nix auswählen ... ich hoffe einer weiß warum! |
Re: Filelist Zeile färben
Das Beispiel kann mal net funktionieren, weil Du es im FormCreate stehen hast :wink:
Dazu müsstest Du es in dem OnClick Ereignis von der ListBox machen. Im OnDrawItem kannst Du die Einträge selbst Zeichnen, und dazu eine Farbe auswählen. N' Beispiel zu OnDrawItem:
Delphi-Quellcode:
Edit: Öha, Tags vergessen...
procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
begin With TListBox(Control) do begin // Farbe wählen If Odd(Index) then Canvas.Font.Color:=clRed else Canvas.Font.Color:=clLime; // Fläche übermalen Canvas.FillRect(Rect); // Text zeichnen Canvas.TextOut(Rect.Left+1, Rect.Top+1, Items[Index]); end; end; |
Re: Filelist Zeile färben
alles klar ich habs zwar jetz aba ma sehn ob ich nochma ne frage stelle thx! :thumb:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 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