Вниз
Скачать: 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.011 c
1-53041
iNew
2003-02-11 05:08
2003.02.17
Как определить достаточно на дискете места для записи или нет


14-53190
copyr25
2003-01-31 19:25
2003.02.17
---|Ветка была без названия|---


3-52771
korvin
2003-01-30 20:05
2003.02.17
Обрезание длинны поля в Интербейсе


7-53294
Dmitrii
2002-12-16 14:31
2003.02.17
Программирование COM порта


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




   Наверх