powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / PageControl DrawTab на Win 7x64
14 сообщений из 14, страница 1 из 1
PageControl DrawTab на Win 7x64
    #38312975
Egor2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
слегка приукрашивал PageControl через OnDrawTab
на Windows 7 x86 было нормально а на x64 заголовки табов не видны. Вот код для примера. Что не так ?
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
procedure TMainForm.PageControl1DrawTab(
  Control: TCustomTabControl; TabIndex: Integer; const Rect: TRect;
  Active: Boolean);
const
  Tops: array[Boolean] of Integer = (0, 4);
  Lefts: array[Boolean] of Integer = (4, 8);
var
  NewRect: TRect;
begin
  with Control.Canvas do
  begin
    NewRect := Rect;
    if Active then
    begin
      NewRect.Top := NewRect.Top + 2;
      FillRect(NewRect);
      Brush.Color := clBtnFace;
      Font.Color := clHighlight;
    end
    else
    begin
      NewRect.Top := NewRect.Top - 2;
      FillRect(NewRect);
      Brush.Color := clGray;
      Font.Color := clHighlightText;
    end;
    TextRect(NewRect, Rect.Left + Lefts[Active], Rect.Top + Tops[Active], TPageControl(Control).Pages[TabIndex].Caption);
  end;
end;
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313025
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Egor2013, если подставить свои, красивые цвета, а не системные?
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313065
Egor2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
поставил произвольный цвет $.... тоже самое. с манифестом и без
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313067
Egor2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Delphi 7 кстати, забыл написать
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313068
Gerasimenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Egor2013,

Сравните OwnerDraw
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313072
Egor2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
с OwnerDraw False текст виден
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313112
Gerasimenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Egor2013с OwnerDraw False текст виден
при True, заголовок берите из массива или переменной, а не так, как Вы
авторTPageControl(Control).Pages[TabIndex].Caption
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313263
Egor2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
GerasimenkoEgor2013с OwnerDraw False текст виден
при True, заголовок берите из массива или переменной, а не так, как Вы
авторTPageControl(Control).Pages[TabIndex].CaptionА куда он может деться при OwnerDraw тру ?
Даже при таком варианте проблема сохраняется:
Код: pascal
1.
TextRect(NewRect, Rect.Left + Lefts[Active], Rect.Top + Tops[Active], '11111111111');
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313295
Egor2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кароче DrawTab на семерке 64 бит вообще не вызывается.
нагуглился кастыль http://www.delphiturkiye.com/forum/viewtopic.php?f=19&t=26777 непонятно на каком языке сайт
наверно в более новых версиях делфей (чем 7) такой проблемы нет ?
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313296
Egor2013
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
пардон, не ту ссылку вставил http://www.delphiturkiye.com/forum/viewtopic.php?f=2&t=26207
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #38313464
Gerasimenko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
PageControl DrawTab на Win 7x64
    #39999746
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все ссылки нерабочие.
Кто-нибудь намекнет куда копать?
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #39999988
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
PageControl DrawTab на Win 7x64
    #40000820
fraks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гаджимурадов Рустам


Спасибо.
Патч применяется, событие вызывается.
Правда в нем кроме как со шрифтом поиграться особо не получается.
Rect это тот кусочек который под надписью, сам ярлык вкладки больше.

Впрочем, мне шрифт и нужен был.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / PageControl DrawTab на Win 7x64
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]