Rexx - графический интерфейс пользователя
Для использования графических пользовательских интерфейсов, доступных в Rexx, необходимо использовать 2 пакета, один называется ActiveTcl а другой - Rexxtkпакет. Наряду с этими двумя пакетами можно разрабатывать обычные формы, которые могут иметь кнопки и другие элементы управления на формах.
Настройка среды
Первое, что нужно сделать, это настроить среду. Выполним следующие шаги, чтобы создать среду.
Step 1 - Загрузите пакет Activetcl со следующего веб-сайта - https://www.activestate.com/activetcl
Step 2- Следующим шагом будет запуск установки ActiveTCl. Чтобы продолжить, нажмите кнопку «Далее» на экране.
Step 3 - Примите лицензионное соглашение и нажмите кнопку «Далее».
Step 4 - Выберите место для установки и нажмите кнопку «Далее».
Step 5 - Выберите место для установки демонстрации и нажмите кнопку Далее.
Step 6 - Нажмите кнопку «Далее», чтобы продолжить установку.
Step 7 - Нажмите кнопку «Готово», чтобы завершить установку.
Step 8 - Следующим шагом будет загрузка программного обеспечения Rexxtk по следующей ссылке - https://sourceforge.net/projects/rexxtk/
Step 9- Дважды щелкните файл установщика по ссылке на предыдущем шаге, чтобы начать установку. Щелкните следующую кнопку, чтобы продолжить.
Step 10 - На следующем экране нажмите кнопку «Да», чтобы принять лицензионное соглашение.
Step 11 - На следующем экране выберите место для установки и нажмите кнопку Далее.
Step 12 - Выберите расположение папки с программой и нажмите следующую кнопку.
После завершения установки мы можем начать программировать графический интерфейс в Rexx.
Базовая программа
Давайте посмотрим, как мы можем разработать простую базовую программу с Rexx в формате графического пользовательского интерфейса.
пример
/* Main program */
call RxFuncAdd 'TkLoadFuncs','rexxtk','TkLoadFuncs'
call TkLoadFuncs
do forever
interpret 'Call' TkWait()
end
call TkDropFuncs
exit 0
В отношении вышеуказанной программы необходимо отметить следующее:
Библиотека Rexxtk и все ее функции загружаются с помощью команды RxFuncAdd.
Цикл do forever будет держать окно открытым и ждать ввода пользователя.
Как только пользовательский ввод будет обнаружен, программа завершится.
Когда вышеуказанная программа будет выполнена, вы получите следующий результат.
Создание меню
Меню создаются с помощью функций TkMenu и TkAdd. Синтаксис этих функций приведен ниже.
Синтаксис
TkMenu(widgetname,options,0)
Параметры
Widgetname - Имя, которое нужно дать меню.
Опции могут быть любыми из следующих -
selectcolor - если флажки или радиокнопки используются в качестве параметров меню, то этот параметр определяет цвет, который следует выбирать при выборе любого параметра меню.
tearoff - Эта опция используется для добавления подменю в главное меню.
title - Строка, которую нужно использовать для присвоения окну заголовка.
Возвращаемое значение
Дескриптор созданного меню.
пример
/* Main program */
call RxFuncAdd 'TkLoadFuncs','rexxtk','TkLoadFuncs'
call TkLoadFuncs
menubar = TkMenu('.m1')
filemenu = TkMenu('.m1.file','-tearoff', 0)
call TkAdd menubar, 'cascade', '-label', 'File', '-menu', filemenu
call TkAdd filemenu, 'command', '-label', 'Open...', '-rexx', 'getfile'
call TkConfig '.', '-menu', menubar
do forever
interpret 'Call' TkWait()
end
call TkDropFuncs
exit 0
В отношении вышеуказанной программы необходимо отметить следующее:
Строка меню создается с помощью функции TkMenu. Параметр «tearoff» означает, что нам нужно создать подменю, которое будет присоединено к главному меню.
Затем мы добавляем 2 пункта меню под названием File и Open с помощью функции TkAdd.
Когда вышеуказанная программа будет выполнена, вы получите следующий результат.