Шрифт:
На рис. 12.1 показано, как выглядит окно приложения.
Рис. 12.1. Простое приложение Tk
Как было сказано выше, создать метку можно было бы и так:
Экранные единицы измерения (в примере выше мы их использовали для указания
Атрибут
У метода
Атрибут
Атрибут
Атрибут
Атрибуты
В общем, Tk обеспечивает достаточную гибкость при размещении виджетов в окне. Читайте документацию и экспериментируйте.
12.1.3. Кнопки
В любом графическом интерфейсе кнопка — один из наиболее употребительных виджетов. Как и следовало ожидать, в Ruby/Tk кнопка представляется классом
В нетривиальных приложениях обычно создаются фреймы, содержащие разные виджеты. Кнопка может располагаться внутри такого фрейма.
Обычно для кнопки задаются по меньшей мере три атрибута:
• текст кнопки;
• ассоциированная с кнопкой команда (исполняемая в результате нажатия);
• способ упаковки кнопки в объемлющем контейнере.
Вот простенький пример:
Здесь мы создаем новую кнопку и присваиваем объект переменной
Текст, заданный в качестве значения атрибута
Как работает метод
Интересная часть — метод
Выполняемое действие не очень осмысленно. Когда пользователь нажимает кнопку, вызывается неграфический метод
Следующий пример более содержателен. В листинге 12.1 приведено приложение, имитирующее термостат. В нем отображается то увеличивающаяся, то уменьшающаяся температура (создавая иллюзию, будто мы включаем обогрев или охлаждение). Код сопровождается комментариями.