Вход в визуальную среду GUIDE, основные настройки

ЗАДАНИЕ

НА КУРСОВУЮ РАБОТУ

по дисциплине «Информационные технологии»

 

студенту ________________________________________________

 

Тема «Разработка приложения с графическим интерфейсом для вычисления определенного интеграла функции»

 

Исходные данные

- Ануфриев И. Е., Смирнов А. Б., Смирнова Е. Н. MATLAB 7. - СПб.: БХВ-Петербург, 2005. 1104 с.

- реализовать и сравнить методы численного интегрирования:

  метод левых прямоугольников,   метод трапеций,
  метод правых прямоугольников,   метод Симпсона (парабол),
  метод средних прямоугольников,   метод Монте-Карло.

Содержание пояснительной записки

- введение;

- математическое и алгоритмическое описание методов решения задачи;

- создание приложения с графическим интерфейсом (алгоритм работы приложения и обработки событий, результат работы приложения для тестового задания);

- исследование и сравнение методов численного интегрирования;

- заключение;

- приложения (листинг программы, руководство пользователя).

Руководитель: /_____________/ / ___________/
  Подпись ФИО
Задание принято к исполнению: /_____________/ / ___________/
  Подпись ФИО
Дата выдачи задания ___________

 

1. введение

Matlab – это система инженерных и научных вычислений. Она обеспечивает математические вычисления, визуализацию научной графики программирование и моделирование процессов с использованием интуитивно понятной среды окружения, когда задачи и их решения могут быть представлены в нотации, близкой к математической. Наиболее известные области применения системы Matlab:

· математика и вычисления;

· разработка алгоритмов;

· вычислительный эксперимент, имитационное моделирование, макетирование;

· анализ данных, исследование и визуализация результатов;

· научная и инженерная графика;

· разработка приложений, включая графический интерфейс пользователя.

Основным объектом при программировании в среде Matlab является массив, для которого не требуется указывать размерность явно. Это позволяет решать многие вычислительные задачи, связанные с векторно-матричными формулировками.

Система Matlab – это одновременно и операционная среда и язык программирования. Пользователь может написать специализированные функции и программы, которые оформляются в виде М-файлов. По мере увеличения количества созданных программ возникают проблемы их классификации и тогда можно попытаться собрать родственные функции в специальные папки. Это приводит к концепции пакетов прикладных программ, которые представляют собой коллекции М-файлов для решения определенной задачи или проблемы.

Cреда системы Matlab

Среда системы Matlab это совокупность интерфейсов, через которые пользователь поддерживают связь этой системой. Это: диалог посредством командной строки или графического интерфейса, просмотр рабочей области, редактор и отладчик М-файлов, работа с файлами и оболочкой DOS, экспорт и импорт данных, интерактивный доступ к справочной информации, динамическое взаимодействие с внешними системами Microsoft Word, Microsoft Excel и др. Реализуются эти интерфейсы через командное окно, инструментальную панель, системы просмотра рабочей области и путей доступа, редактор / отладчик М-файлов, специальные меню.

Пользовательский интерфейс носит дружественный характер и построен с учетом устоявшихся принципов программного обеспечения, разрабатываемого для операционной системы Windows.

В системе Matlab существует два вида м-файлов:

· скрипты – представляют последовательности команд (представляют собой процедуры);

· function – представляют собой функции с входными аргументами и выходными параметрами (значениями функции).

Но далее возникает необходимость многократного запуска файла программы при других, изменённых параметрах решаемой задачи. Возникает неудобство: в постоянном редактировании исходного текста программы и повторном или очередном её запуске. При этом важен механизм управления переменными, который бы обеспечивал удобный интерфейс между программой и пользователем. При решении других задач могут возникнуть трудности с визуализацией какого-либо процесса, то есть некоторая переменная изменяться динамически в процессе решения поставленной задачи.

Все эти и другие трудности, возможно, решить при использовании графического интерфейса пользователя. (GUI – Graphical UserInterface)

Основные принципы построения графического интерфейса

Использование графического интерфейса позволяет пользователю сделать программу более универсальной.

Как и любой процесс проектирования, процесс построения графического интерфейса пользователя можно разбить на следующие этапы:

1. Постановка задачи,

2. Создание формы интерфейса и создание на неё элементов управления.

3. Написание кода программы и кода обработки событий.

Этапы построения графического интерфейса пользователя

1. На первом этапе проводиться анализ поставленной задачи и определяется количество и состав элементов управления необходимых для решения задачи.

2. На втором этапе создаётся форма графического интерфейса и на ней создаются и размещаются элементы управления. Здесь же описываются их свойства.

Задавать расположение и выравнивать элементы на форме описывать их свойства можно 'вручную', но для удобства и быстроты используют редактор выравнивания объектов (The Alignment Tool) и редактора свойств (The Property Editor).

Существует два способа создания формы и элементов управления, а так же задания или изменения их свойств:

· использование команды WORKSPACE (то есть использование команды операционной среды MATLAB).

· использование средств панели инструментов – совокупности средств для быстрого создания GUI (The Control Panel).

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

Эти команды можно использовать как для написания кода, создающего графический интерфейс пользователя, так и использовать для управления свойствами элементов управления из тела m-файлов. Благодаря чему мы можем получить визуализацию нашего процесса вычисления.

На практике всё более склоняются ко второму способу создания графического интерфейса с элементами управления. Это объясняется тем, что при использовании панели управления с её редакторами свойств, событий, выравнивания очень удобно работать, и создавать GUI значительно быстрее, чем в первом случае.

3. На третьем этапе создания графического интерфейса пользователя (GUI) пишется код основной программы вычисления и код для обработки событий.

Код основной программы вычисления, пишется на языке программирования операционной среды Matlab, в виде m-файла. Созданные m-файлы закрепляются за событием какого-нибудь элемента управления или формы.

При описании свойств элементов управления события описываются в m-файле:

а) либо при создании каждого элемента управления описываем его свойства и сразу описываем действие событие;

б) либо описываем обработку события для каждого элемента при помощи редактора событий (The Property Editor).

Начало выполнения действий по созданию графического интерфейса

Редактор GUIDE (руководство) вызывается командой guide из командного окна или путем выполнения цепочки команд главного меню File (Файл) – New (Новый) – GUI (Графический Интерфейс).

 

2.создание приложения с графическим интерфейсом (алгоритм работы приложения и обработки событий, результат работы приложения для тестового задания);

 

Графический пользовательский интерфейс MATLAB

В состав MATLAB входит среда GUIDE (Graphical User Interface Development Environment) для создания приложений с графическим интерфейсом пользователя. Работа в этой среде достаточно проста - элементы управления (кнопки, раскрывающиеся списки и т.д.) размещаются при помощи мыши, а затем программируются события, которые возникают при обращении пользователя к данным элементам управления.

Приложение может состоять как из одного основного окна, так и нескольких окон и осуществлять вывод графической и текстовой информации, в основное окно приложения и в отдельные окна. Ряд функций MATLAB предназначен для создания стандартных диалоговых окон открытия и сохранения файла, печати, выбора шрифта, окна для ввода данных и др., которыми можно пользоваться в собственных приложениях.

Что необходимо знать для создания приложений с графическим интерфейсом? Во-первых, как программируются файл- функции с подфункциями, файл- функции с переменным числом входных и выходных аргументов. Во-вторых, требуется иметь представление об иерархической структуре и свойствах графических объектов, уметь обращаться с указателями на них. Разумеется, не должна вызывать затруднение работа с числовыми массивами, строками, структурами, ячейками и массивами строк, структур и ячеек, а также использование конструкций встроенного языка программирования.

Элементы управления являются графическими объектами- потомками графического окна в иерархии объектов. Они могут быть созданы при помощи специальных функций низкоуровневой графики, но эффективнее использование визуальной среды GUIDE, которая позволяет создавать заготовку окна приложения, разместить на ней элементы управления, запрограммировать события и их взаимосвязь.

 

Таблица 1.

Интерфейсные компоненты MATLAB. Название компонента Назначение Аналог в других системах программирования
Push Button Простая кнопка Visual Basic (VB) - CommandButton BCB, Delphi - Button Visual C++ - Push Button
Toggle Button Кнопка, фиксирующаяся в утопленном состоянии BCB, Delphi - SpeedButton
Radiobutton Переключатель - индикатор альтернативных вариантов VB - Option Box BCB, Delphi - RadioButton Visual C++ - Radio Button
Checkbox Окошко - индикатор неальтернативных вариантов VB - CheckBox BCB, Delphi - CheckBox
Edit Text Поле для вывода, ввода и редактирования текста VB - TextBox BCB, Delphi-Edit Visual C++ - Edit Box
Static Text Область для вывода текста (метка) VB - Label BCB, Delphi - Label, StaticText Visual C++ -Static Text
Slider Ползунок, полоса про- крутки VB - HScrollBar, VScrollBar BCB, Delphi- ScrollBar Visual C++ - Horizontal или Vertical Scroll Bar
Panel Рамка, контейнер для интерфейсных компонентов VB - Frame BCB, Delphi - Frame, Panel, Group Box Visual C++ - нет аналога

 

Button Group Рамка для кнопок типа Radio Button И Toggle Button VB - Frame BCB, Delphi - Radio Group, Group Box Visual C++ - нет аналога
Listbox Список, окно для отобра- жения массива строк VB - ListBox ВСВ, Delphi - ListBox Visual C++ - L i s t Box
Popup Menu Всплывающее меню VB -Menu Editor BCB, Delphi - PopMenu

 

Каждый интерфейсный элемент обладает заданным набором свойств, определяющих внешний вид и поведение компонента на стадии выполнения программы. В пакете MATLAB любому интерфейсному элементу всегда приписано 41 свойство (табл. 2).

 

Таблица 2.

Свойства интерфейсных компонентов

 

Свойство Назначение Допустимые значения
BackgroundColor Цвет фона (по умолчанию – серый [0.753 0.753 0.753]) Вектор, задающий значе- ния RGB-компонентов из диапазона от 0 до 1
BeingDeleted Признак возможности удаления (по умолчанию - o f f ) on (разрешено), o f f (запрещено)
BusyAction Реакция на возникновение ново- го прерывания во время обработ- ки текущего события (по умолча- нию - queue) queue (поставить в очередь), cancel (проигнорировать)
ButtonDownFcn Указатель на функцию обработки события "Нажатие правой кнопки мыши"
Cdata Массив для хранения изображе- ния в формате t r u e c o l o r , кото- рое "наклеивается" на поверх- ность объекта
Callback Указатель на функцию - обра- ботчик события Callback
Children Массив указателей на потомков
Clipping Признак отсечения при выходе изображения за границы объекта (по умолчанию - on) on (включено), o f f (отключено)
CreateFcn Указатель на функцию обработки события "Создание объекта"
DeleteFcn Указатель на функцию обработки события "Удаление объекта"
Enable Признак доступа к объекту (по умолчанию - on) on (доступ разрешен), o f f (доступ запрещен)
Extent Габаритный прямоугольник
FontAngle Признак наклона букв (по умол- чанию- normal) normal (прямой шрифт), i t a l i c (курсив), oblicue (наклонный)
FontName Имя шрифта (по умолчанию - MS Sans Serif) Список имен шрифтов, установленных в Windows
FontSize Размер (высота) букв в установ-
    ленных единицах (по умолча- нию - 8 пунктов)  
FontUnits Единицы измерения (по умолча- нию- points) inches (дюймы), centimeters (сантиметры), normalized, pixels (пикселы), points (пункты, 1 пункт = 1/72 дюйма)  
FontWeight Толщина контура букв (по умол- чанию - normal) normal (нормальная), light (утонченная), demi (полужирная), bold (жирная)  
ForegroundColor Цвет рисования (по умолчанию - черный = [ 0 . 0 0.0 0.0]) Вектор значений RGB- компонентов  
Handle Visibility Признак видимости указателя обработчика событий (по умол- чанию - on) on (доступен), o f f (не доступен)  
HitTest Признак разрешения поиска объекта по значению свойства (по умолчанию - on) on (поиск разрешен), o f f (поиск запрещен)  
Horizontal Alignment Способ размещения надписи в поле объекта (по умолчанию - center) l e f t (левый прижим), r i g h t (правый прижим), center (по центру)  
Interruptible Признак разрешения прервать обработчик события (по умолча- нию- on) on (прерывание разрешено), o f f (прерывание запрещено)  
KeyPr&ssFcn Указатель на функцию обработки события "Нажата клавиша" в тот момент, когда компонент нахо- дился в фокусе  
ListBoxTop Индекс строки разворачивающе- гося списка, которая отображена в верхнем окне (по умолчанию - 0)  
Max Максимальное значение свойст- ва Value (по умолчанию - 1)  
Min Минимальное значение свойства Value (по умолчанию - 0)  
Parent Указатель на родительский объект  
Position Позиция объекта - вектор, опре- деляющий координаты нижнего левого угла объекта, его ширину и высоту в установленных едини- цах измерения  
Selected Признак выбора объекта on (выбран), o f f (не выбран)  
Selection- Highlight Признак повышенной яркости для выделения того или иного элемента в объекте (по умолча- on (включен), o f f (выключен)  
               

 

Создание приложения с графическим интерфейсом

Вход в визуальную среду GUIDE, основные настройки

- команда guide -переход в визуальную среду GUIDE;

- выбираем Blank GUI (Default)– пустое окно приложения без элементов управления, осей и меню;

- в меню Toolsвыбрать GUI Options, в списке Command-lime accessibilityустановить Callback(GUI becomes Curent Figure within Callbacks), включить переключатель Generate FIG-file and M-file– автоматическая генерация заготовок для подфункций обработки событий, использование окна приложения для графического вывода.

Рис. 6. Приложение "Analyse" в режиме редактирования.