Оформление кнопок в скриптах для СС2015
В индизайне СС2015 что-то улучшили, и в результате в программе DoTextOK и других программах, где есть логотип CMYK-бабочка, картинка, помещенная в кнопку инструкцией «iconbutton», оказалась сдвинутой вправо.
Это нерешаемая на уровне программирования ситуация, т.к. что-то изменилось в коде движка javascript.
Переписка с мэтрами скриптинга Питером Карелом и Марком Аутретом подарила мысль, что можно не только при помощи инструкции “iconbutton” делать кнопку, но и при помощи “image”. И пример на сайте Марка Аутрета есть:
http://www.indiscripts.com/post/2011/04/sprite-buttons-in-scriptui
Вообще это интересная идея – вместо того, чтобы безуспешно пытаться правильно разместить картинку в фрейме кнопки, просто нарисовать картинку, без контура кнопки вокруг неё, и включить опции наведения, щелчка и пр.
В приведенном примере Марк демонстрирует, как, имея картинку с видами кнопки в трех состояниях – нормальный, выбор, щелчок – сделать полноценную кнопку. У меня была другая задача – сделать автономную процедуру, которой передавались бы три параметра: имя файла с картинками трех состояний, позиция в описании окна и ссылка на функцию, обрабатывающую нажатие кнопки. Тогда можно было бы везде заменить оформление кнопок, что решило бы свалившуюся с появлением СС215 проблему неправильного отображения рисунков на кнопках.
И эта процедура теперь у нас есть, можете брать и пользоваться!
Главное, правильно оформить картинки, отображающие три состояния кнопки.
Вот как выглядит знакомый всем файл «CMYK-бабочка» с тремя состояниями кнопки:
Придётся смириться с тем, что низкое разрешение, рисунок ведь 22 х 54 точки при разрешении 72 точки на дюйм. Но для понимания идеи этого достаточно.
Верхнее – это состояние, когда кнопка не нажата. Среднее – в него переключается кнопка, когда сверху оказывается курсор, тут у меня просто инверсия картинки. Третье – для состояния щелчка, но я его не стал менять.
Скрипт вы найдёте в архиве, ссылка внизу.
Вот так это теперь выглядит.
Контура кнопки вокруг CMYK-бабочки нет, но это полноценная кнопка, реагирующая сменой картинки на появление курсора в ней, и отрабатывающая щелчок на ней.
Пробуйте, берите в свою коллекцию решений, дорабатывайте под свои задачи.
Архив с этим скриптом: ButtonsInCC2015
Последние комментарии