Documentos de Académico
Documentos de Profesional
Documentos de Cultura
El cuadro de dilogo GUI Options permite seleccionar si se quiere que el GUIDE genere solamente el archivo FIG-File o tanto el archivo FIG-File como el M-File. Permite, tambin, la seleccin de un conjunto de diferentes comportamientos en el GUI denominados Resize behavior, CommandLine Accesibility, Generate FIG-File and M-File, Generate Callback Function Prototypes, GUI allows Only One Instance to Run (Singleton), Using the System Background Colors y Generate FIG-File Only.
considerablemente, estas leyendas no se alcanzan a leer. Este comportamiento trabaja bien con herramientas simples de un GUI y en cajas de dilogos que hacen ajustes sin cerrarlos. Al seleccionar esta opcin, GUIDE ajusta las siguientes propiedades que hacen que el GUI se re-dimensione proporcionalmente: Units: esta propiedad se ajusta al valor normalized para el control Axes y todos los otros uicontroles. Con lo anterior, estos componentes se re-dimensionan y re-localizan con el re-dimensionamiento de la figura Units: esta propiedad se ajusta al valor characters para la figura del GUI, de tal manera que esta se despliega con el tamao correcto en el momento de ejecutarse, en base a algunos cambios en el tamao de letra Resize: esta propiedad se ajusta a on ResizeFcn: esta propiedad se deja en blanco
del cambio no advertido en la apariencia del GUI mediante la entrada de comandos, tales como plot que alteran la figura normal. La opcin por defecto es Callback (GUI becomes Current Figure within Callbacks) y con ella, el GUI puede, solamente, convertirse en la figura normal de MATLAB mediante el comando gcf mientras se ejecuta un callback. Pueden darse ocasiones en que se quiere un manejo de la figura del GUI que sea accesible desde la lnea de comandos. Por ejemplo, se podra requerir que el GUI despliegue grficos creados en la lnea de comandos. Para este caso, se debera seleccionar la opcin On(GUI may become Current Figure from Command Line). Hay cuatro opciones para el acceso desde la lnea de comandos que son: Callback (GUI becomes Current Figure within Callbacks) Off (GUI never becomes Current Figure) On (GUI may become Current Figure from Command Line) Other (Use settings from Property Inspector)
sobre la figura normal o axes. Estos comandos incluyen a xlabel, ylabel, zlabel, title, gca, gcf y findobj HandleVisibility-On. Las estructuras HandleVisibility se ajusta a On son siempre visibles cuando
IntegerHandle. Al ajustar la propiedad IntegerHandle a Off se causa que Matlab asigne estructuras con nmeros reales no reutilizables (por ejemplo, 67.0001221) en vez de enteros. Esto reduce considerablemente la posibilidad de un algo accidentL en el desempeo de una operacin en la figura El uso del findobj. Al ajustar el comportamiento Command-Line Accessibility al valor Off la estructura de la figura del GUI se mantiene escondida. Esto significa que no se puede utilizar findobj para localizar las estructuras de los uicontroles en el GUI. Como alternativa, el archivo GUI M-File crea una estructura handle que contiene las estructuras de cada control en el GUI y pasa esta estructura a subfunciones La siguiente tabla muestra un resumen de cmo cada una de las cuatros opciones del comportamiento Command-Line Accessibility ajustan las propiedades HandleVisibility e IntegerHandle en el Inspector de Propiedades.
HandleVisibility IntegerHandle Callback Off On User specifies Off Off On User specifies
El argumento hObject es la estructura del objeto cuyo callback se est ejecutando. El argumento eventdata se establece como vacio y es reservado para un uso futuro. El argumento handles es una estructura que contiene las estructuras de todos los componentes en el GUI cuyos nombres de campos son definidos mediante la propiedad Tag del objeto. Puede tambin, utilizarse para pasar datos a otras funciones callback o la lnea de comandos. Por ejemplo, si se instala un botn push button cuya propiedad Tag se ajusta a pushbutton1, entonces GUIDE genera la siguiente subfuncin en el archivo GUI M-File encabezada con el siguiente nombre:
donde, my_gui, el nombre del archive GUI M-File pushbutton1_Callback es el nombre de la subfuncin rutina callback definida en my_gui gcbo es un comando que regresa la estructura del objeto callback (por ejemplo, pushbutton1) [] es un lugar reservado para el argumento eventdata, normalmente sin usar guidata(gcbo) regresa la estructura handles
Permite a Matlab que despliegue solamente una ventana del GUI Permite a Matlab que despliegue varias ventanas del GUI Si se permite solamente una ventana, Matlab reutiliza la figura del GUI existente cuando se aplica el comando para ejecutar el GUI. Si ya existe un GUI, Matlab lo hace desplegar en el frente en vez de crear una nueva figura. Si se deja en claro esta opcin, Matlab crea una nueva figura GUI cada vez que se aplica el comando para ejecutarla
Cuando se selecciona esta opcin, se debe ajustar la propiedad callback de cada componente en el GUI a un valor de caracteres que Matlab puede evaluar y desarrollar la accin deseada. Este valor puede ser una expresin o el nombre de un archivo M-File. Seleccione esta opcin si se quiere utilizar un estilo de programacin completamente diferente que la suministrada por el archivo GUI MFile.
de la ecuacin diferencial y seis botones Static Text para titular la interfaz y cada uno de los parmetros que se capturen en los botones Edit Text.
de la salida y t_sim_edit5 al de simulacin. Observe las propiedades Callback y CreateFcn en el inspector de propiedades donde se nota la asignacin del nombre a cada una de las funciones correspondientes para cada uno de los botones Edit Text 5. Archivo M-File: Despliegue el archivo M-File presionando el icono correspondiente localizado en la barra de herramientas y verifique que han sido incluidas dos funciones para cada uno de los botones con los nombres por ejemplo de tau_edit1_CreateFcn y tau_edit1_Callback
6. Propiedad Position: Haga un ajuste manual de su localizacin y tamao como se observa en la Figura 3.4. Utilice el inspector de propiedades de cada uno de los botones Edit Text para asignarle la misma altura de los botones Static Text.
Componente Axes
1. Instale un botn Axes con la localizacin y el tamao ajustados manualmente como se observa en la Figura 3.4. Este componente se deja ajustado a las propiedades asignadas por defecto
3. Propiedad HorizontalAlignment: Ajstela al valor center (centro). 4. Propiedad Tag: Asigne el nombre plot_pushbutton1. Observe en el inspector de propiedades Callback el nombre a la funcin correspondiente 5. Archivo M-File: Despliegue el archivo M-File presionando el icono correspondiente localizado en la barra de herramientas y verifique que ha sido incluida la funcin plot_pushbutton1_Callback
Function tau_edit1_CreateFcn
Se puede observar en el archivo M-File, que Matlab en la funcin CreateFcn de un componente Edit Text introduce el siguiente cdigo al instalar el botn
Con la palabra clave ispc y el ciclo de control ifelseend se verifica si el Matlab se encuentra instalado en un computador personal (PC) con sistema
operativo Windows. Si es verdadero se cumple la sentencia ordenada en el segundo rengln, pero si no se cumple, entonces, se ejecuta la sentencia del cuarto rengln del ciclo. Con el comando set se ajustan las propiedades del botn o componente programado en la funcin en la cual est incluido el ciclo de control. En el ciclo anterior, el segundo rengln ajusta el color de fondo del botn ('BackgroundColor') al blanco ('white'). Es decir, que la sintaxis del comando set es:
1. Dentro de la funcin tau_edit1_CreateFcn, cambie el valor white, por otro valor como yellow, black, blue, cyan, green, etc. Haga correr la simulacin del GUI y verifique que el fondo del botn muestra el fondo con el color especificado en el cdigo La sentencia construida en el cuarto rengln del ciclo anterior, ajusta la propiedad del color del fondo del botn Edit Text al valor por defecto de dicha propiedad. Para esto se emplea la palabra clave get que se aplica para adquirir la informacin sobre las propiedades o caractersticas de un objeto. En este caso, el cero que se observa como primer argumento significa el objeto por defecto y a continuacin, el segundo argumento captura la correspondiente propiedad)
Function tau_edit1_Callback
En esta funcin se codifica la captura del valor introducido por el usuario en la propiedad String del botn denominado tau_edit1_Callback. Para ello se introduce las siguientes sentencias
tau = str2double(get(hObject, 'String')); if isnan(tau) set(hObject, 'String', 0); errordlg('Input must be a number','Error'); end
En la primera sentencia, el comando str2double convierte la propiedad String introducida como character a un valor numrico de doble precisin. En este caso
dicha propiedad es previamente capturada con la palabra clave get. El valor convertido se almacena con el nombre de tau. Con el ciclo de control ifelseend y la palabra clave isnan se verifica si el valor tau no es nmero o si. Si se verifica que no es nmero, el segundo rengln ajusta la propiedad String al valor cero y despliega un cuadro de dilogo con un mensaje de error con la leyenda y el ttulo especificados como argumentos del comando errordlg
2. Dentro del callback de cada uno de los restantes botones Edit Text introduzca un cdigo similar al anterior para la captura y verificacin del valor introducido en cada uno de ellos. Tenga en cuenta que debe asignar un smbolo al valor capturado; se sugiere que sea el mismo colocado en la propiedad Tag. 3. Ejecute el GUI y asigne cualquier valor que sea no numrico en cualquiera de los botones Edit Text. Se verifica que se despliega el cuadro de dilogo con el mensaje de error. En caso contrario, la asignacin es correcta y no se despliega el cuadro de dilogo.