1. GUI: INTERFAZ DE USUARIO GRAFICA

Anuncio
1. GUI: INTERFAZ DE USUARIO GRAFICA
1.1 Introducción
Matlab facilita las herramientas para que el usuario ejecute los códigos
construidos para la solución de un modelo matemático mediante el accionar de
los objetos gráficos incluidos en una interfaz de usuario gráfica (GUI). Los
objetos son los componentes del GUI, que se elabora en el denominado
Ambiente para el desarrollo de interfaces de usuarios gráficas (Graphical User
Interface development environment o GUIDE).
1.2 Acceso al GUIDE
1. Para acceder al ambiente para el desarrollo de interfaces de usuarios gráficos
de Matlab se digita la palabra clave “guide” desde el editor de comandos y se
despliega la ventana de título “GUIDE Quick Start” que aparece en la Figura
1.1
Figura 1.1. Acceso Rápido a GUIDE
Por defecto, aparece desplegada la ventana de nombre “Create New GUI”, en
la cual se observa el cuadro “GUIDE templates” con las opciones para abrir
plantillas en blanco (“Blank GUI) o asistentes (“GUI with Uicontrols” y GUI
with Axes and Menu).
2. Seleccione la opción “Blank GUI (Default) y presione el botón “OK” para
desplegar el ambiente o “Layout Editor” de GUIDE, cuyas partes y
denominaciones se muestran en la Figura 1.2
Figura 1.2. Editor de GUIDE
La Figura 1.2 muestra las partes del editor y sobresalen la paleta de
componentes y el área de distribución de estos. Algunas opciones
complementarias para la construcción del GUI como la herramienta para la
alineación de los componentes (“Alignment Tool”), los editores de menús y
archivos punto m (“Menu Editor” y “M-File Editor”), el mostrario de objetos
(“Object Browser”), el inspector de propiedades de objetos (“Property
Inspector”) y el botón para la ejecución de la interfaz (“Run Button”) se
acceden desde la barra estándar o desde los menús “View” y “Tools”.
Si se quiere ajustar la posición y el tamaño del GUI a un valor exacto haga lo
siguiente:
 Seleccione el inspector de propiedades, “Property Inspector”, que se
encuentra en la barra de herramientas o en el menú “View”. Se desplegará
una ventana como la observada en la Figura 1.3
Figura 1.3 Inspector de Propiedades del GUI
 Haga un clic sobre el botón desplegable que aparece a la derecha de la
propiedad “Units” y seleccione la opción pulgadas, “inches” que se encuentra
en el menú contextual
 Haga un clic izquierdo sobre el signo + que se observa a la izquierda de la
propiedad “Position” para desplegar el árbol con el cual se introducen las
coordenadas x, y del punto donde se quiere posicionar el extremo inferior
izquierdo del GUI, además del ancho y el alto como se observa en la Figura
1.3. El ajuste de la propiedad “Units” a “characters” le da al GUI una
apariencia mas consistente a través de la plataforma
Paleta de Componentes del GUI
Los componentes incluidos en la paleta colocada a la izquierda del GUIDE son los
objetos que se instalan en el GUI para ejecutar a través de ellos acciones que se
requieren para la corrida del programa codificado en Matlab. Los nombres de dichos
componentes son: botón de presión (“Push Button”), “Toggle Button”, botón de
opción (“Radio Button”), cuadro de verificación (“Checkbox”), edición de texto
(“Edit Text”), texto estático (“Static Text”), barra deslizable (“Slider”), marco
(“Frame”), cuadro de lista desplegable (“Listbox”), menú contextual
(“PopupMenu”) y ejes (“Axes”).
Instalación de Componentes del GUI
La instalación de un componente en el área de distribución se puede hacer de
cualquiera de las siguientes formas:
 Se presiona en forma sostenida con el botón izquierdo del mouse y se
arrastra hasta el área de distribución del GUIDE
 Presionando el componente, el puntero del mouse cambia a forma en cruz
y esto sirve de guía para seleccionar la posición de la esquina superior
izquierda del control.
3. Sobre la ventana desplegada del GUIDE añada tres botones de presión, un
botón estático, un menú desplegable y un cuadro de ejes como se observa en
la Figura 1.4.
Figura 1.4 Adición de Componentes al GUI
Alineación de Componentes del GUI
Los objetos instalados en el GUIDE se pueden alinear y espaciar entre sí, mediante
la herramienta denominada “Alignment Tool”. Al utilizar dicho recurso, se
seleccionan los componentes y la opción “Align Objects” que se encuentra en la
barra estándar o en el menú “Tools”. Se despliega una ventana como la que se
muestra en la Figura 1.5, para alinear los tres botones “Push Button” instalados en el
GUI de la Figura 1.4 y se procede de la siguiente manera:
Figura 1.5 Alineación y Espaciado de componentes en el GUI
1. Se seleccionan los tres botones presionando la tecla “Ctrl” y haciendo clic
sobre cada uno de ellos
2. Se selecciona la opción “Align Objects” para realizar los siguientes ajustes
que se muestran en la Figura 1.5
a. Espaciado de 20 pixels entre los botones en dirección vertical
b. Alineación a la izquierda en la dirección vertical
3. Se hace clic sobre el botón “OK”
Archivos FIG-Files and M-Files en el GUI
GUIDE almacena dos archivos que se generan la primera vez que se guarda y se
corre la GUI, el uno es un archivo FIG-file y el otro es un M-File
 FIG-File es un archivo con extensión .fig que contiene una descripción
completa de la distribución de la figura del GUI y de sus componentes:
botones, menús, ejes, etc. Cuando se realizan cambios en el GUI en el editor,
los cambios se guardan en el archivo FIG-File
 M-File es un archivo con extensión .m que contiene el código que controla el
GUI incluyendo los callbacks de sus componentes. A este archivo se refiere
como el GUI M-File. Cuando se corre o salva un GUI desde el editor,
GUIDE genera el GUI M-File con blancos para cada uno de los callbacks. Se
pueden programar los callbacks desde el editor de archivos M-File.
1.3 Plantillas del GUIDE
Al desplegarse la ventana de título “GUIDE Quick Start” que aparece en la Figura
1.1, se observa en el panel izquierdo que además de la opción “Blank GUI (Default),
GUIDE contiene dos tipos básicos de GUI’s que sirven como plantillas para la
construcción de interfaces de una forma mas fácil y rápida.
Acceso a las Plantillas del GUIDE
Se puede acceder a las plantillas de GUIDE de dos maneras:
 Digitando la palabra clave “guide” en el editor de comandos de Matlab o
 Si el GUIDE ya se encuentra abierto, seleccionando la opción “New” del
menú “File” en el editor de GUIDE.
Al seleccionar una de estas plantillas, se despliega en el panel derecho una vista
previa de ella. Al hacer clic sobre el botón “OK” se despliega la plantilla en el editor
de GUIDE. En la Figura 1.6 se observa la selección y vista previa de la plantilla
“GUI with Uicontrols”
Figura 1.6 Vista Previa de la plantilla “GUI with Uicontrols”
Plantilla “GUIDE with Uicontrols”
La Figura 1.7 muestra la plantilla denominada “GUI with UIcontrols” ya desplegada
en el editor de GUIDE. El GUI se hace funcionar haciendo clic sobre el botón “Run”
que aparece en la barra de herramientas como un triángulo verde y se despliega el
cuadro modal que aparece en la Figura 1.8.
Presione el botón “Yes” para continuar, aceptando la salvación de los cambios en la
figura y en el archivo M-File que soporta al GUI. . Después de guardar la plantilla
asignándole un nombre, Matlab despliega el GUI (Figura 1.9) y un archivo M-File
que codifica la ejecución del archivo figura. Se deduce con esto que en la creación
de una plantilla se generan dos archivos, uno para la figura construida como plantilla
y otro M-File
Figura 1.7 Plantilla “GUIDE with Uicontrols”
Figura 1.8 Inicio de un GUI
Figura 1.9 GUI de la plantilla “GUIDE with Uicontrols”
Cuando el usuario ingresa los valores para la densidad y el volumen de un objeto, y
presiona el botón de nombre “Calculate”, el GUI calcula la masa del objeto y
despliega el resultado en el cuadro “Mass(D*V)”. El GUI dispone de un marco
dentro del cual hay dos radio botones para seleccionar el sistema de unidades. El
botón “Reset” al presionarlo deja en blanco los cuadros de edición y con ello se
puede utilizar el GUI para unos nuevos cálculos. Además, incluye otro marco con
tres cuadros estáticos que muestran los nombres de las magnitudes a ingresar en los
respectivos cuadros de edición
Plantilla “GUIDE with Axes and Menu”
La Figura 1.10 muestra la plantilla denominada “GUI with Axes and Menu” ya
desplegada en el editor de GUIDE.
Figura 1.10 Plantilla “GUIDE with Axes and Menu”
Al correr el GUI, respondiendo los requerimientos previos, se muestran cinco
gráficos de números al azar generados con el comando rand(5), como se observa en
la Figura 1.11
Se pueden seleccionar otros gráficos en el menú contextual. Se presiona el botón
“Update” para desplegar en el cuadro “Axes” el gráfico seleccionado. El GUI
también tiene un menú con tres opciones:
 Open despliega un diálogo con el cual se pueden abrir archivos grabados en
su computador
 Print ejecuta el comando “printdlg” con el cual se despliega el cuadro de
diálgo “Print” (handles.figure1). Observe que handles.figure1 contiene el
gráfico por defecto. Al presionar el botón “Yes” en cuadro de diálogo “Print”
se imprime el gráfico
 Close cierra la ventana del GUI
Figura 1.11 GUI de la plantilla “GUIDE with Axes and Menu”
Plantilla “Modal Question Dialog”
La Figura 1.12 muestra la plantilla denominada “GUI Modal Question Dialog” ya
desplegada en el editor de GUIDE. Al correr la plantilla se despliega, además del
archivo M-File, el cuadro modal de interrogación que se observa en la Figura 1.13
Según el botón que se presione, el GUI regresa la palabra “Yes” o “No”. El GUI está
bloqueando, significa que el archivo M-File en ejecución se detiene hasta que se
reestablezca dicha ejecución. Se puede hacer bloqueo de un GUI, añadiendo el
siguiente comando a la función de inicio: uiwait(handles.figure1);
Figura 1.12 Plantilla “Modal Question Dialog”
Figura 1.13 Inicio de la creación de un diálogo pregunta
Para restaurar el acceso a otras ventanas de Matlab después que un botón se ha
presionado, se añade el siguiente comando a los “callbacks” de tanto el botón de
“Yes” como el de “No”: uiresume(handles.figure1);
Descargar