![]() |
Caption-Textfarbe eines PageControl TabSheets ändern
Hallo zusammen,
ist es möglich den Caption-Texten der TabSheets in einem PageControl verschiedene Farben zuzuweisen ? Ich habe in einem PageControl 4 TabSheets und möchte die TabSheets im Reiter-Text farblich differenzieren. Im Objektinspektor kann einem TabSheet eine Farbe einzeln zugewiesen werden, übernommen wird aber letzten Endes immer die Font-Farbe im PageControl. Und die ist dann gültig für alle darin befindlichen TabSheets. Grüße Thomas |
AW: Caption-Textfarbe eines PageControl TabSheets ändern
TabSheet ist ausschließlich der Klientbereich im TabControl.
Die Buttons/Tabs gehören aber zum TabControl. Standardmäßig gibt es das nicht, also müsstest du dich vermutlich selber um das Zeichnen der Tabs kümmern. |
AW: Caption-Textfarbe eines PageControl TabSheets ändern
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
![]() ![]() |
AW: Caption-Textfarbe eines PageControl TabSheets ändern
Liste der Anhänge anzeigen (Anzahl: 2)
Im PageControl.OnDrawTab:
PC1 ist das PageControl
Delphi-Quellcode:
procedure TForm1.PC1DrawTab(Control: TCustomTabControl; TabIndex: Integer;
const Rect: TRect; Active: Boolean); var TabCaption: string; CaptionX: Integer; CaptionY: Integer; begin if Active then begin Control.Canvas.Brush.Color := clLime; Control.Canvas.Font.Color:= clRed; Control.Canvas.Font.Style := Control.Canvas.Font.Style + [fsBold]; end else begin Control.Canvas.Brush.Color := clBtnFace; Control.Canvas.Font.Color:= clBlack; //hier kann man einen Block von Tabs anders färben, wenn man will if TabIndex in [25..30] then Control.Canvas.Brush.Color := clSkyBlue; Control.Canvas.Font.Style := Control.Canvas.Font.Style - [fsBold]; end; Control.Canvas.FillRect(Rect); //hier kann man die Tabs umbenennen, wenn man will with Control.Canvas do begin TabCaption := INTTOSTR(TabIndex+1); CaptionX := Rect.Left + ((Rect.Right - Rect.Left - TextWidth(TabCaption)) div 2); CaptionY := Rect.Top + ((Rect.Bottom - Rect.Top - TextHeight('Gg')) div 2); FillRect(Rect); TextOut(CaptionX, CaptionY, TabCaption); end; end; |
AW: Caption-Textfarbe eines PageControl TabSheets ändern
Vielen Dank für eure Hilfe.
Klappt perfekt :) Grüße Thomas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:46 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