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

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

HotTrack - PageControl - OwnerDraw?


NAlexey ©   (2003-02-07 13:58:00) 

Подскажите пожалуйста как можно реализовать?
Возникла необходимость рисовать PageControl самостоятельно. Картинки и текст рисуются, а вот HotTrack сделать не могу.


NAlexey   (2003-02-07 18:14:00) [1]

Ну уже и не знаю совсем.
Не меняет он ширину, и все тут. Высоту по прежнему менят, ширину нет.


Игорь Шевченко   (2003-02-07 17:46:00) [2]

procedure TCustomTabControl.UpdateTabSize;
begin
SendMessage(Handle, TCM_SETITEMSIZE, 0, Integer(FTabSize));
TabsChanged;
end;


NAlexey   (2003-02-07 17:29:00) [3]

Оно то это оно.
Только вот для конкретного Tab оно не работает.:(
Может я в чем то не прав, но я далаю так:
в Uses + CommCtrl;
procedure TForm1.Button1Click(Sender: TObject);
begin
TabCtrl_SetItemSize(PageControl1.ActivePage.Handle, 100, 100);
end;
-- Не работает

procedure TForm1.Button1Click(Sender: TObject);
begin
TabCtrl_SetItemSize(PageControl1.Handle, 100, 100);
end;
--Работает, но не изменяет ширину, только высоту:((
В чем здесь не так?


Игорь Шевченко   (2003-02-07 17:12:00) [4]

The TCM_SETITEMSIZE message sets the width and height of tabs in a fixed-width or owner-drawn tab control. You can send this message explicitly or by using the TabCtrl_SetItemSize macro.

TCM_SETITEMSIZE
wParam = 0; // not used; must be zero
lParam = MAKELPARAM(cx, cy); // new width and height, in pixels


Parameters

cx and cy

New width and height, in pixels.



Return Values

Returns the old width and height. The width is in the low-order word of the return value, and the height is in the high-order word.

See Also

TabCtrl_SetItemSize

Оно ?


NAlexey   (2003-02-07 16:54:00) [5]

Спасибо за ответ, но таким образом оно не заработает. С HotTrack я разобрался немного по другому, ну раз уж если был ответ на этот вопрос, то может и на следующий ответите:
Когда Caption TabSheet вылазит за размеры TabSheeta, он растягивается. Но это если не рисуешь самостоятельно. Так вот собственно вопрос:
как увеличивать размер конкретного(одного) TabSheet вручную. Или его придется также самостоятельно рисовать?
Когда самостоятельно рисуешь на


Игорь Шевченко   (2003-02-07 15:17:00) [6]

if TTabSheet.Highlighted then
Рисовать как HotTrack
else
Все остальное


Наверх

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