Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как рисовать на табах?

247
15 октября 2004 года
wanja
1.2K / / 03.02.2003
Я пытался рисовать на табах PageControl(Tabsheet).
Нне получилось. У TabSheet нет св-ва Canvas, пробовал в onDrawTab, все равно не вышло.
2.4K
19 октября 2004 года
Russtam
33 / / 26.07.2003
Усё работает, смотри картинку в конце сообщения.
Во первых, TabSheet тебе не нужен, обращаешься к канве самого PageControl-a, инфу о табшитах берешь в Pages[] у того же PageControl-a.

Пример OnDrawTab:
Код:
procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
begin
  with PageControl1.Canvas do
  begin
    if TabIndex = 0 then
      Brush.Color := clYellow
    else
      Brush.Color := clMoneyGreen;
    Brush.Style := bsSolid;
    Rectangle(Rect);
    Font.Color := clNavy;
    TextRect(Rect, Rect.Left + 4, Rect.Top + 4,
      PageControl1.Pages[TabIndex].Caption);
  end;
end;

Самая главная фишка - установи
PageControl1.OwnerDraw := true;
Иначе твоя отрисовка даже "дергаться" не будет.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог