Уроки Tk

Начало Уроки Tk Файлы
Статьи Уроки Tcl Гостевая книга
Предыдущий урок - #00: Введение - Интерпретатор Tk Wish

#01: Первая программа "Привет, мир".

Первым делом запустите код примера, далее в этом уроке будет описана структура программы. Подробно все элементы интерфейса один за одним будут разбираться в следующих уроках.

Если вы всё сделали правильно, то на экране появится окно, в заголовке которого будет написано Hi, а на окне расположена текстовая метка "Привет, Мир!" и кнопка Выход, если нажать на кнопку, то программа завершится (логично, правда?).

Итак, в программе четыре строчки, разберём их.

В первой строчке устанавливается заголовок окна с помощью команды wm title. WM расшифровывается как Window Manager - менеджер окон. Через обращение к нему можно поменять свойства всего окна, например, заголовок, размеры, позицию, иконку, и т.д. В данном случае подкомандой title мы устанавливаем заголовок. По умолчанию заголовок - название исполняемого файла.

Главное окно имеет имя ".". Расположенные на нём элементы управления обладают именами начинающимися с точки, для указания их расположения. Если в главном окне есть фреймы (т.е. окно разделено на части), то элементы управления будут иметь в начале имени имя фрейма, которому они принадлежат. Например: ".leftframe.label1". Всё это напоминает пути в файловой системе.

Во второй строчке создаётся элемент управления (widget) - label (метка). Метка предназначена для вывода строки текста. Это самый часто используемый элемент управления. Более подробно он будет рассмотрен в следующем уроке. В данном случае при создании сразу указывается текст метки опцией -text. Имя метки - ".lab".

Далее, в третьей строчке создаётся кнопка (button) с именем ".ex". Сразу же указывается текст кнопки уже знакомой опцией -text, и опцией -command указывается команда, выполняемая при нажатии на кнопку. В данном случае - exit, выход из программы.

Однако, при создании виджетов (widget - элемент управления) они не появляются в окне. Для того, чтобы их вывести используется команда pack.

Команда pack располагает виджеты в окне согласно заданным опциям. По умолчанию - сверху вниз один под другим. Опция -expand yes указывает что виджеты можно увеличивать на свободное пространство, а опция -fill both указывает, что они должны заполнять всё свободное место как по горизонтали, так и по вертикали.

Пример:

wm title . "Hi"
label .hi -text "Привет, Мир!"
button .ex -text Выход -command exit
pack .hi .ex -expand yes -fill both

Следующий урок - #02: Метка - label
Горбачев "Yurez" Юрий  
Хостинг от uCoz