Вниз
Скачать: CL | DM;

Цвет шрифта и фон заголовков TPageControl в Windows 7 x64   Найти похожие ветки 

← →
HF-Trade ©   (2011-01-21 10:31) [0]

Как изменить сабж?

В ХР Все работало отменно.
Работало так -

procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;  TabIndex: Integer; Const Rect: TRect; Active: Boolean);
begin
PageControl1.Canvas.Brush.Color := clBlack;
PageControl1.Canvas.FillRect(Rect);
PageControl1.Font.Color := clWhite;
PageControl1.Canvas.TextOut(Rect.TopLeft.X + 6,Rect.TopLeft.Y + 3, PageControl1.Pages[TabIndex].Caption);
end;

В Win7 событие OnDrawTab вообще не обрабатывается

Попробовал вот таким образом -

procedure TMainForm.Button1Click(Sender: TObject);
var
Rect: TRect;
I, OldBkMode: Integer;
begin
For I := 0 to PageControl1.PageCount - 1 do
 Begin
  Rect := PageControl1.TabRect(I);
  PageControl1.Canvas.Brush.Color := clBlack;
  PageControl1.Canvas.FillRect(Rect);
  PageControl1.Font.Color := clWhite;
  OldBkMode := SetBkMode(PageControl1.Canvas.Handle, TRANSPARENT);
  MainPC.Canvas.TextOut(Rect.TopLeft.X + 6, Rect.TopLeft.Y + 3, PageControl1.Pages[I].Caption);
  SetBkMode(PageControl1.Canvas.Handle, OldBkMode);
end;
end;

В результате -
Заголовки закладок заливаются, но цвет текста Caption"ов не меняется.
К тому же при наведении на заголовок, фон изменяется на начальный.


← →
HF-Trade ©   (2011-01-21 10:34) [1]

MainPC - TPageControl1(не обращяйте внимания - корректировал сообщение, и забыл поправить...)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.006 c
11-1233219482
chum
2009-01-29 11:58
2011.04.24
Как перевести проект с 7 на 10.


6-1215495439
AHTOLLlKA
2008-07-08 09:37
2011.04.24
Socks5 клиент, как состряпать запрос ?


1-1252912417
KSergey
2009-09-14 11:13
2011.04.24
DLL и глобальные переменные


15-1294694994
Юрий
2011-01-11 00:29
2011.04.24
С днем рождения ! 11 января 2011 вторник


2-1295539697
Ain
2011-01-20 19:08
2011.04.24
Edit




   Наверх