Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.04.24;
Скачать: 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 вся ветка

Текущий архив: 2011.04.24;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.01 c
15-1294771007
LDV
2011-01-11 21:36
2011.04.24
sql-запрос


15-1294499183
RWolf
2011-01-08 18:06
2011.04.24
GhostDoc для Delphi


15-1294435799
Юрий
2011-01-08 00:29
2011.04.24
С днем рождения ! 8 января 2011 суббота


15-1294495883
12
2011-01-08 17:11
2011.04.24
Программа, аля система контроля инцидентов


15-1294954192
Юрий
2011-01-14 00:29
2011.04.24
С днем рождения ! 14 января 2011 пятница