Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Color von Tabs, TabsFelder und Border in PageControl (https://www.delphipraxis.net/154567-color-von-tabs-tabsfelder-und-border-pagecontrol.html)

BlueLiquidCell 15. Sep 2010 17:56

Delphi-Version: 5

Color von Tabs, TabsFelder und Border in PageControl
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hey Jungs habe folgendes Problem:
Habe eine Form mit mehreren Tabs.
Problem sind die Farben der Tabs, der TabsFelder und der Grenzen:

Delphi-Quellcode:
  PageTabs.OwnerDraw:=True;

  PageTabs.TabHeight:=50;
  PageTabs.TabWidth:=100;

  //Farbe vom Tab Button
  PageTabs.Brush.Color:=$00383D42;

  //Farbe vom Tab ansich
  Tabsheet1.Brush.Color := clBlue;
Obiger Code ist in der OnCreate drin.
Funktoniert auch soweit.

Problem sind noch die Namen der Tabs, die eigentlich vorhanden sind aber sobald ich die PageTabs.OwnerDraw auf True setze verschwinden.
Folgendes hab ich schon ohne Erfolg probiert:
PageTabs.Font.Color:=clWhite;
TabSheet1.Caption:='Hallo';

Und das andere Problem sind die weissen Grenzen.

Also ich will da ne eigene Farbe bestimmen können.

Hat jemand ne idee wie ich das hinkrieg?
Vielen Danke schonmal

stahli 15. Sep 2010 22:23

AW: Color von Tabs, TabsFelder und Border in PageControl
 
Schau mal, ob es so etwas wie OnDrawTab gibt:

Delphi-Quellcode:
procedure TForm1.TabControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
begin
  with Control do
  begin
    if ... then
      Canvas.Font.Color := clWindowText
    else
      Canvas.Font.Color := clGrayText;
    if ... then
      Canvas.Font.Style := [fsUnderline]
    else
      Canvas.Font.Style := [];
    if ... then
      Canvas.Font.Style := Canvas.Font.Style + [fsStrikeOut];
    Canvas.TextOut(rect.Left + 2, Rect.Top + 2, TabControl1.Tabs[TabIndex]);
  end;
end;

BlueLiquidCell 16. Sep 2010 21:12

AW: Color von Tabs, TabsFelder und Border in PageControl
 
Hey
OnDrawTab gibts, aber funktionieren tuts leider nicht.
Noch andere ideen?
Christoph


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:50 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz