Основные
команды для создания пользовательского интерфейса
Опытные пользователи
нередко используют MATLAB для создания своих собственных систем. Этому во многом
способствует идеология системы — хранение большей части команд и функций в виде
m-файлов. Простота коррекции файлов и отсутствие необходимости явно объявлять
создание новых команд и функций привели к появлению множества программных систем
на базе MATLAB, особенно в таких областях, как решение задач линейной алгебры,
моделирование различных систем и структур и т. д.
В новой версии
MATLAB дескрипторная графика позволяет конструировать детали пользовательского
интерфейса. Полный список команд и функций для проектирования пользовательского
интерфейса можно получить, выполнив команду
help
uitools.
Ниже перечислены
все команды и функции данного назначения. Функции пользовательского интерфейса
GUI:
ulcontrol
— создание управляющего элемента;
ulmenu
— создание пользовательского меню;
ginput
— графический ввод с помощью мыши.
Перечень команд
и функций пользовательского интерфейса:
dragrect
— создание выделяющего прямоугольника с помощью мыши;
rbbox —
растягивание прямоугольника мышью;
selectmoveresize
— интерактивное выделение, перемещение и копирование объектов с помощью
мыши;
waitforbuttonpress
— ожидание нажатия клавиши клавиатуры или кнопки мыши в окне;
waltfor
— прекращение выполнения программы в ожидании уничтожения заданного графического
объекта или изменения его свойств;
uiwait
— прекращение выполнения программы в ожидании вызова функции uiresume или
закрытия заданного графического окна;
inresume
— возобновить выполнение после блокировки;
uisuspend
— прекращение интерактивного состояния фигуры;
uirestore
— возобновление интерактивного состояния фигуры.
Средства проектирования
пользовательского интерфейса:
guide
— создание GUI;
align
— выровнять положение объектов интерфейса;
cbedit
— изменение повторного вызова объектов;
menuedit
— изменение меню;
propedit
— изменение свойств объектов.
Средства создания
диалоговых окон:
dialog
— создание диалогового окна;
axlimdlg
— ограничение размеров диалогового окна;
errordlg
— создание окна с сообщением об ошибке;
helpdlg
— создание справочного окна;
inputdlg
— создание окна диалога ввода;
listdlg
— создание окна диалога для выбора вариантов параметра из списка;
menu —
создание меню диалогового ввода;
msgbox
— создание окна сообщений;
questdlg
— создание окна запроса;
warndlg
— создание окна предупреждения;
uigetfile
— создание стандартного окна открытия файлов;
uiputfile
— создание стандартного окна записи файлов;
uisetcolor
— создание окна выбора цвета;
uisetfont
— создание окна выбора шрифта;
pagedlg
— создание диалогового окна параметров страницы;
printdlg
— создание диалогового окна печати;
waitbar
— создание окна с индикатором прогресса.
Создание меню:
makemenu
— создать структуры меню;
menubar
— устанавливать типовые свойства для объекта MenuBar;
umtoggle
— изменять статус параметра "checked" для объекта uimenu;
winmenu
— создать подменю для меню Window.
Создание кнопок
панели инструментов и управление ими:
btngroup
— создать кнопку панели инструментов;
btnstate
— запросить статус кнопки;
btnpress
— управление кнопкой;
btndown
— нажать кнопку;
btnup
— отпустить кнопку
Утилиты задания
свойств объектов figure/axes:
сlruprop
— удалить свойство объекта;
getuprop
— запросить свойство объекта;
setuprop
— установить свойство объекта.
Вспомогательные
утилиты:
all child
— запросить все порожденные объекты;
findall
— найти все объекты;
hidegui
— скрыть/открыть объекты GUI;
edtext
— интерактивное редактирование объектов text;
getstatus
— запросить свойства строки объекта figure;
setstatus
— установить свойства строки объекта figure;
popupstr
— запросить свойства строки выпадающего меню;
remapflg
— изменить положение объекта figure;
setptr
— установить указатель на объект figure;
getptr
— получить указатель на объект figure;
overobj
— запросить дескриптор объекта, над которым находится курсор мыши.
Таким образом,
MATLAB содержит обширный набор команд и функций для создания типовых элементов
пользовательского интерфейса. Объем данной книги не позволяет останавливаться
на детальном описании этих функций, тем более что оно имеется в справочной системе.
Поэтому мы ограничимся единственным примером: создание кнопки, на которой можно
щелкнуть мышью и перевести ее в нажатое состояние.