Форум » GUI » Checkbutton - смена изображений в зависимости от значения » Ответить

Checkbutton - смена изображений в зависимости от значения

Dr. Oldwarez: У меня в программе много CHECKBUTTONов, которые включают/выключают дополнительные условия фильтрации таблицы. Если CHECKBUTTON нажат (значение True), то фильтр активирован, нет - фильтрация только SCOPE по ключу вышестоящей таблицы, например, все квартиры данного дома. Как научить CHECKBUTTON менять свои картинки в зависимости от того, нажата ли кнопка. Например, если фильтр отключён - выводится пиктограмма с воронкой - международный знак фильтра. Если же фильтр активирован - выводится другая пиктограмма, где под воронкой стоит красный косой крестик - отключение фильтра.

Ответов - 3

gfilatov2002: Dr. Oldwarez пишет: Как научить CHECKBUTTON менять свои картинки Надо убивать и заново создавать требуемый CHECKBUTTON с новой картинкой, как это сделано в Procedure SetChkBtnPicture() примера EasyPlayer (см. в папке samples\Applications\EasyPlayer) Дешево и сердито...

Dr. Oldwarez: gfilatov2002 пишет: Надо убивать и заново создавать требуемый CHECKBUTTON с новой картинкой, как это сделано в Procedure SetChkBtnPicture() примера EasyPlayer (см. в папке samples\Applications\EasyPlayer) Дешево и сердито... А поэлегантнее ничего нет? Почему это текст кнопки можно менять в ходе выполнения программы, а картинку нельзя?

S-A-N: Dr. Oldwarez пишет: А поэлегантнее ничего нет? Не знаю, насколько это поэлегантнее. Но можно еще создать 2 CHECKBUTTON с требуемыми картинками один над другим. У одного (который сейчас не нужен) устанавливаем ENABLED в .F. и прячем его (CHECKBUTTON) с помощью свойства VISIBLE или метода HIDE. Потом, по мере необходимости, прячем другой и показываем первый.




полная версия страницы