Форум: "Основная";
Текущий архив: 2005.07.25;
Скачать: [xml.tar.bz2];
ВнизКак обойти отсутствие AutoSize у TCheckBox ? Найти похожие ветки
← →
Fay © (2005-07-06 18:44) [0]Как задать ширину TCheckBox-а, чтобы Caption точно влез, но не больше?
← →
GLFox © (2005-07-06 19:04) [1]Canvas.TextWidth()
← →
Petr V. Abramov © (2005-07-06 19:06) [2]В обработчике CM_TEXTCHANGED
через DrawText с параметром DT_CALCRECT вычислить ширину текста и установить ширину.
P.S. Сам не пробовал, но по идее должно получиться
← →
jack128 © (2005-07-06 19:15) [3]хелп говорит, что нужно написать наследника и перекрыть в нем метод AdjustSize. Ну и опубликовать свойство AutoSize, конечно
← →
Petr V. Abramov © (2005-07-06 19:26) [4]jack128 © (06.07.05 19:15) [3]
AdjustSize-то вызовется при изменении чего угодно, но не Caption`а, или я не прав?
← →
jack128 © (2005-07-07 14:40) [5]Хм, да, ты прав. Я несколько удивлен..
Похорошу в CM_TEXTCHANGED не напрямую вычислять размеры чекбокса, а именно вызывать AdjustSize. А вот в нем и заниматься вычислениями.. Но я смотрю в реализаю TCustomLabel.AutoSize и вижу, что борланды что то тут перемудрили..
← →
AbrosimovA (2005-07-07 15:23) [6]За хелпом стоят те же смертные и грешные.
← →
Fay © (2005-07-07 15:58) [7]Про DrawText я в курсе, но как вычислить размер всего остального (того же "квадратика")?
← →
jack128 © (2005-07-07 16:20) [8]Fay © (07.07.05 15:58) [7]
размер всего остального (того же "квадратика")?
Делаешь скриншот, вставляешь в Paint и считаешь пиксели :-) С темами XP наверно в сторону TThemeServices.ContentRect нужно покопать...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.07.25;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.012 c