![]() |
Einfärben der TABs bei einem PageControl?
Hai,
gibt es eine Möglichkeit die TABs eines Pagecontrols einzufrägen? z.B. Das erste in Blau und das zweite in Rot? Aber nur die TABs, nicht die eigenliche Seite. |
Moin Sharky,
das geht. Schau Dir doch mal die Doku zum Ereignis OnDrawTab an. Du musst dann allerdings auch den Text selber ausgeben, aber das dürfte dann ja nicht das Problem sein. |
Moin Christian,
danke für die Info..... Aber leider funktioniert es nicht so richtig. Ich habe mit dem ganzen Canvas-Zeug noch nicht gross gearbeitet. Ich kann zwar den Text ausgeben. Aber die Farbe des TABs kann nicht nicht ändern. Bei mir werden immer beide TABs geändert. Aber das liegt sicher wieder an einem Fehler in meinem Verstand :lol: Hast Du eventuell ein Beispiel für mich? |
Moin Sharky,
ich hab' mal versucht ein Beispiel hinzubasteln. Nicht schön, aber geht :mrgreen:
Delphi-Quellcode:
Nicht zu vergessen die Eigenschaft OwnerDraw des TPageControl's auf true zu setzen ;-)
procedure TfrmMAIN.PageControl1DrawTab(Control: TCustomTabControl;
TabIndex: Integer; const Rect: TRect; Active: Boolean); const _clTabColors : array [0..1] of TColor = (clRed,clBlue); _sTabCaptions : array [0..1] of string = ('Blau','Rot'); begin Control.Canvas.Brush.Color := _clTabColors[TabIndex]; Control.Canvas.FillRect(Rect); Control.Canvas.TextOut(Rect.Left+5,Rect.Top+3,_sTabCaptions[TabIndex]); end; Es ist übrigens korrekt, dass immer beide Tabs geschrieben werden, besser gesagt immer alle, da diese Routine für alle Tabs der Reihe nach aufgerufen wird. |
Bingo. :hello:
Genau so wollte ich das ... Danke Danke Danke. Aber Geschenke gibt es trotzdem keine :lol: :spin: :chat: |
Re: Einfärben der TABs bei einem PageControl?
Funktioniert die Lösung von oben bei euch?
Ich habe keine OwnerDraw Eigenschaft! Und das Ereignis existiert bei mir auch net :( Wie funktioniert das? |
Re: Einfärben der TABs bei einem PageControl?
Sorry!
Ich benutze die CLX und da gibt es sowas nicht :( Gibt es sonst noch eine Lösung unter der CLX die Tabs selbst zu zeichnen? |
Re: Einfärben der TABs bei einem PageControl?
Von CLX hab ich keine Ahnung, aber da bei mir z.B. schon 2 Farben genügen mach ich es einfach so:
Delphi-Quellcode:
TabSheet1.Highlighted := True; //oder False je nach dem :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:13 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