Вниз
Скачать: CL | DM;

Как динамически изменять размер TabSheet?   Найти похожие ветки 

 
NAlexey ©   (2003-02-10 15:26) [0]

Я уже задавал этот вопрос, но решение так и не нашлось при всей кажущейся легкости задачи: Как динамически изменить размер КОНКРЕТНОГО Tab, повторю - не всех одновременно, а отдельного.
Дело в том, что возникла необходимость рисовать картинки на Tab ах, но не из ImageList, а из своего набора, отсюда вывод: OwnerDraw := true; и рисуем в событии OnDrawTab.
Так вот нарисовать текст и картинку это ладно, но не получается динамически изменять размер Tab если текст выходит за его размеры. Подскажите пожалуйста.


 
MBo ©   (2003-02-10 15:32) [1]

TCM_SETITEMSIZE?


 
NAlexey ©   (2003-02-10 15:43) [2]

Это изменяет размер всех Item ов PageControla.
Мне необходимо изменить размер конкретно Tab, как например происходит когда вбиваешь его Caption и он растягивается.


 
MBo ©   (2003-02-10 16:30) [3]

>Это изменяет размер всех Item ов PageControla.
Именно так устроен PageControl - он сам вычисляет размер Tab-а, исходя из ширины текста и наличия/размера картинки.
Что не дает внести свои картинки в imagelist?
Можно также добавлять пробелы к надписи, чтобы создать нужный пустой промежуток.


 
NAlexey ©   (2003-02-10 16:46) [4]

>Именно так устроен PageControl - он сам вычисляет размер Tab-а, исходя из ширины текста и наличия/размера картинки.
Т.е получается что ситуация безвыходная?

>Что не дает внести свои картинки в imagelist?
Картинки хранятся в ресурсе. Создавать ImageList динамически потом убивать его? А если картинок эдак 200-300?

>Можно также добавлять пробелы к надписи, чтобы создать нужный пустой промежуток.
Пробывал так, Tab.Caption := Concat(" ", Tab.Caption); Хорошо если 16x16, а если больше... соответственно и пробелов больше. Ну вот и нахожусь в поиске, вродебы весчь выглядит просто, а вот те на.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.017 c
1-52829
Nemas
2003-02-07 10:18
2003.02.17
Как определить количество строк в TMemo?


6-53135
cybermonk
2002-12-23 16:31
2003.02.17
SendArp


1-52907
Makhanev A.S.
2003-02-06 23:04
2003.02.17
Как работать отдельно с старшими и младшими байтами Cardinal?


6-53153
Toxa
2002-12-26 20:11
2003.02.17
TWebBrowser&JavaScript


14-53249
Broot
2003-02-01 07:50
2003.02.17
Delphi5 standart




   Наверх