Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как изменить внешний вид TPageControl?


@!!ex ©   (2010-03-02 09:26:00) 

Заказчик хочет, чтобы закладки PageControl выглядили подргому - дал эскиз.
Я вижу три варианта:
1) Сделать Windows Theme и через UxTheme установить ее на PageControl. Минусы в том, что я не знаю как делать темы и как понимаю - тема должна быть установлена в Windows, чтобы ее можно было использовать.
2) Сделать наследника TPageControl и перекрыть метод CNDrawItem и соответственно перерисовать вручную. Минус в том что тогда нельзя будет в design-time создавать этот контрол.
3) Использовать событие OnDrawTab. Минус в том, что подконтрольна в этом случае не вся закладка, а только внутренняя ее часть. А хочется перерисовать его полностью.

Как быть?


oldman   (2010-03-02 16:20:00) [1]


> тем более он более чем адекватный и честный.


Вот заодно и проверишь...
:)))


@!!ex   (2010-03-02 16:09:00) [2]

Ну с заказчиком ссорится не с руки, тем более он более чем адекватный и честный. :)


HF-Trade   (2010-03-02 15:03:00) [3]

TImage вместо "заголовков" TPageControl, со всеми обработчиками (OnMouseDown... etc) + TPanel'и c Visible false\true
Вообщем если закладок не много то вполне неплохой вариант)
Ну и [1]+
=)


DrPass   (2010-03-02 12:19:00) [4]


> @!!ex ©   (02.03.10 09:26) 
> Заказчик хочет, чтобы закладки PageControl выглядили подргому
> - дал эскиз.

Тю, ну включи стоимость разработки нестандартной компоненты PageControl в смету и покажи заказчику. Если его устроит - флаг ему в руки :)


Наверх

Титульная страница Поиск, карта сайта Написать письмо