Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Esta imagen muestra el rea de dibujo en la cual se irn colocando botones, cuadros de
texto, grficos, entre otras herramientas.
Cada elemento que se coloque en la ventana anterior generar una cantidad de lneas de
cdigo dentro de un m.file que describe las propiedades de la interfaz creada. Es al
interior de este cdigo donde el programador asignara acciones a cada botn, a los
cuadros de texto y a las figuras que desee utilizar. La imagen siguiente muestra el m.file
que se crea al momento de guardar el archivo GUI que se ha elaborado.
Cuadro de Herramientas:
En este cuadro podemos encontrar cada uno de los controles que se utilizaran para
construir la interfaz grafica del usuario. Estos controles son programables a travs de los
callback (funciones que se ejecutan cuando el usuario activa o usa controles que se
encuentran en la GUI). A continuacin se presenta una breve descripcin de algunos
controles.(Luego en la prctica se aprender como utilizarlos)
Push Buttons
Estos generan una accin (antes programada) cuando el usuario lo presiona.
Radio Buttons
El uso comn de estos es usarlos para seleccionar determinadas opciones las cuales son
excluyentes entre si, es decir solamente puede estar seleccionada una a la vez.
Check Boxes
Estos se usan de forma similar a los Radio Buttons, con la salvedad de que estos pueden
ser no excluyentes entre s.
Edit Text
Son controles los cuales permiten al usuario digitar cadenas de texto o ingresar valores
numricos, es decir controles que manejan entradas del usuario para luego utilizarlas en
la codificacin
Static text
Los textos estticos son utilizados como etiquetas y para imprimir salidas de cadena, el
contenido de estos no puede ser modificado por el usuario.
Slider
Esta opcin acepta como entrada datos numricos con un rango que se especifica. Esta
barra puede moverse manteniendo presionado y moviendo el mouse sobre ella.
Frames
Son cajas que delimitan regiones y son utilizadas principalmente para separar
por grupos varios controles para mayor facilidad de diseo y presentacin para el usuario.
List boxes
Despliegan una lista antes creada por el programador y permite al usuario seleccionar
algn elemento de esta misma.
Pop-Up Menus
Este despliega opciones cuando hacemos clic en la flecha que posee el control.
Estos se programan por lo general con la sentencia switch
Axes
Excelente para controlar objetos grficos y cada una de sus caractersticas.
Ejemplo1:
Crear un programa (con GUI) que teniendo como entrada una funcin f(x), despliegue la
derivada de esa funcin, la integral y Fourier. Si el usuario quiere cambiar de funcin debe
existir un botn que limpie las entradas y otro para poder salir de la interfaz grfica.
Para empezar creamos una nueva figura y agregamos un Static Box a un lado ponemos
un Text Box y al lado del Text Box ponemos un Push Button, debajo de estos controles
ponemos 6 Static Text y finalmente agregamos dos Push Buttons; y lo guardamos como:
Calculadora.fig, al finalizar tendremos una interface como la que se muestra a
continuacin:
Finalmente para el Push Button del lado izquierdo modificamos la propiedad String a:
Limpiar y al Push Button del lado derecho String a: Salir.
Ahora vamos a editar el callback del botn salir y agregamos el cdigo necesario para
cerrar la ventana, luego editamos el callback del botn Limpiar, cuya accin es limpiar la
caja de texto de la funcin y los resultados de cada operacin.
Para hacer ello hay que considerar agregar un identificador a cada Tag de cada control,
esto es, poner un nombre a cada control para luego llamarlo e identificarlo. Para ello
seleccionamos Tag en el Inspector de propiedades. Primero editamos el Tag de nuestro
control de la caja de texto por: la_ecuacion. Y para los Static Text que no tienen texto
modificamos sus Tag en el siguiente orden por:
res_derivar
res_integrar
res_fourier
Ahora es posible saber que va a pasar con cada Static Text al presionar el botn Limpia.
El algoritmo en general para limpiar sera:
1. Definir variables
2 - Limpiar Variables
3 - Buscar los controles con el Tag
4. Definir limpia
5 - Limpiar controles
La sintaxis en general para activar un control es:
Variable = findobj ( gcbf, 'Tag', 'Nombre-de-Tag' ) ;
Lo cual nos indica que primero crea una variable local la cual contiene las propiedades del
objeto cuyo Tag es: Nombre-de-Tag, con esto ya hemos activado nuestro control, ahora
hay que regresar la accin; para ello la sintaxis es:
set ( Variable , ' Propiedad' , Operacin ) ;
En el m.file que describe la GUI que se ha creado, se debe buscar las lneas
correspondientes al push botton 2 y ah se hacen los siguientes cambios:
%Creando limpia
limpia=' ';
%Hacer limpia
set(para_derivada, 'String', limpia);
set(para_integral, 'String', limpia);
set(para_fourier, 'String', limpia);
Ejemplo 2
Creacin de una interfaz grfica que muestre el ploteo de las seales trigonomtricas
seno, coseno y la suma de ambas. Para esto se realizar el siguiente GUI:
Las instrucciones
trucciones anteriores generan un cuadro de mensaje para el usuario,
usuario de tipo
pregunta. Se pueden ejecutar o no sentencias dependiendo de la respuesta escogida. Por
ejemplo, si deseamos
eseamos salir o no del programa se tiene:
opc=questdlg('Desea
'Desea salir del programa?','SALIR','Si','No','No');
programa?'
if strcmp(opc,'No')
return;
end
clear,clc,close all
(
Clear
La funcin strcmp compara dos strings y si son iguales retorna el valor 1 (true).
elimina todas los valores de workspace, clc limpia la pantalla y close all cierra todos los
Guide. Ntese que la secuencia 'Si','No','No' termina en 'No'; con esto se logra que la
parte No del cuadro de pregunta est resaltado. Si terminara en 'Si', la parte Si del cuadro
de pregunta se resaltara.
Cmo ejecutar todos los GUI?
1. Desde la ventana de comandos (digitando el nombre del programa)
2. Dando click en el siguiente boton del GUIDE
EJERCICIO
Crear un programa (con GUI) que calcule la corriente que pasa por un resistor.
Entradas del usuario: Voltaje en V y Resistencia en ohms. A continuaci
continuacin se muestra la
interfaz final y para cada una de sus partes se muestra
uestra el tipo de control que representa,
representa
seguido de las
as propiedades que usted deber modificar dando doble click en cada una de
esos elementos.
% Definicin de corriente
i = v/r;
% A la propiedad String de la variable i_text
% se le esta asignando el valor que posee
% la variable i
set(handles.i_text,'String'
'String',i);
Este cdigo ser digita en el callback del push button calcular pues se desea que
cuando este boton sea accionado se realicen los clculos.