Escolar Documentos
Profissional Documentos
Cultura Documentos
Grupo: GDIME
Aluno: Jouberson Leônidas
Prof: Abdon Tapía
Introdução
O Matlab possui uma ferramenta que permite construir interfaces gráficas de interação com o utilizador. O utilitário
GUI são interfaces amigáveis para o utilizador e durante o projeto prático. Para construir uma interface gráfica
convém ter uma ideia muito bem definida do que se pretende.
Neste primeiro momento, cabe apresentar o espaço do Matlab destinado à construção de uma interface gráfica,
ou seja, uma Gui. É acessado do menu new gui.
Dê um clic em OK para abrir um utilizador em branco para a criação da gui, ou digite “guide” na janela de
comando do matlab.
Com o utilizador você poderá fazer um desenho de seu programa utilizando as ferramentas a direita da janela do
utilizador.
A barra para construção dá ao usuário o material necessário para construir a cara da interface gráfica.
Ferramentas do programa
Logo abaixo estão algumas ferramentas que serão utilizadas nas interfaces gráficas ;
Edit text - é utilizado para a entrada de dados na gui, onde o mesmo pode ser armazenado em uma variável.
O Pop-up-menu e a List box servem para listar dados amostrais, embora sejam diferentes as séries de comandos
para utilizá-los é bem semelhante. Sendo a lista a coluna de uma matriz criada pelo usuário.
Push button - é uma botão onde sua ação será determinada de acordo com a necessidade do usuário, onde ao
clicá-lo produz a ação do programa.
Toggle button é um botão que pode realizar duas funções, uma quando está ativado e outra quando está
desativado. Ele possui o seu valor igual a 1 quando ligado e 0 quando desligado.
Exemplo: if x==1
grid on
else x==0
grid off
Radio buttons end - é utilizado como um marcador, onde seu valor também varia de zero a um. Quando
selecionado seu valor é igual a 1, e quando não está selecionado seu valor é 0, funciona de maneira semelhante
ao Toggle button.
Slider - funciona como um controlador, onde seus valores podem variar de acordo com a necessidade do
programador. O programador pode escolher o intervalo que ele pode variar, veremos isso mais adiante em
Property inspector, onde é ai que pode ser mudada todas as suas propriedades.
Text - O Text serve para apresentar dados e textos produzidos pelo usuário, também é possível inserir em uma
variável o que está escrito nele.
Propriedades(Property Inspector)
Todos os elementos Gui possuem tais propiedades como tamanho, cor, posição, Tag(nome), style(tipo de
elemento), fonte, tamanho da fonte, string(nome de exibição), Callback(função do botão), entre outros. Os quais
estes são os principais.
Callback à O callback é o que chamamos de função de um botão, o qual executa uma ação ao ser selecionado.
Podemos direcionar a ação de um botão alterando o seu callback de sua propriedade.
Enable à É como um (liga/ desliga), para as ferramentas.
Style à É o estilo da ferramenta, fala se é um push button, edit text, pop-up-menu, slider, etc....
String à É o texto apresentado na interface da ferramenta.
Tag à É exatamente o nome da ferramenta, e como iremos nos referir a ela ao programá-la.
Max à O valor máximo que a ferramenta pode ter, muito útil para programar slider.
Min à O valor mínimo que a ferramenta pode ter,também muito útil para programar slider.
Position à É a posição onde a ferramenta está [Xmin, Ymin, Xmax,Ymax].
Construção de uma Gui
Após montar o programa utilizando os recursos computacionais citados acima, podemos ativar a interface, basta
apertar Ctrl+T, ou aperte um botão verde em formato de play na parte superior da janela. Quando a janela de um
interface gráfico é ativada, o Matlab cria automaticamente uma função (M-file) com o código necessário para gerar
a Estrutura de dados de todos os componentes e respectivas propriedades que constituem a interface, através de
uma sequência de instruções que aparecem no início da função e não devem ser alteradas.
Comando get e set à O comando “get” serve para a entrada de
dados, seja ele um número ou um nome.
O comando “set” tem a finalidade de apenas exibir dados obtidos ou gerados no programa em qualquer elemento
gui programado.
Exemplo 1:
Variável=get(handles.edit1, ‘string’);
set(handles.text1, ‘string’,Variavel)
Exemplo 2:
Toda interface criada gera um M-file correspondente as ferramentas utilizadas. Então fazendo o desenho do
programa abaixo utilizando um text, um edit text e um push button, digite os comandos abaixo no M-file gerado
pela interface na parte que corresponde a ação no botão (callback). Confira se no Tag correspondentes aos
comandos é o mesmo da interface, pelo contrário ao rodar o programa dará erro.
Exemplos Práticos
Exemplo 1:
O comando str2num serve para converter o valor string em um valor numérico, e num2str o contrário.
Lembrando: O Tag do M-file deve ser correspondente a ferramenta usada na interface. Os comandos devem ser
digitados no M-file da interface abaixo da parte correspondente ao callback do botão.
Exemplo 2
Repare que cara radio button tem seu callback, então a lógica é a seguinte: Quando o usuário seleciona um radio
button o mesmo é marcado e automaticamente os dois restantes não são marcados.
Logo:
function radiobutton1_callback(hObject, eventdata, handles)
set(handles.radionbutton1,’value’,1);
set(handles.radionbutton2,’value’,0);
set(handles.radionbutton3,’value’,0);
Obs: o valor do Radio button pode ser colocado em uma variável e utilizado como condição para ações futuras de
determinado programa.
Exemplo 3:
Este exemplo mostra a utilidade do Slider , onde o seu intervalo pode ser alterado de acordo com a necessidade
do programador no Propert Inspector em max e min.
A lógica do programa é a seguinte: De acordo que o Slider corre o valor contido em seu intervalo aumenta, onde
no fim do Slider é seu valor máximo. Logo o valor selecionado é colocado em uma variável e depois apresentada
em um text.
O axes faz parte das ferramentas utilizadas para a construção de uma gui, o programador pode inserir vários
gráficos ao mesmo tempo, mas para se referir a cada axes basta digitar handle(handles.axes(numero do axes)),
no M-file gerado pela interface.
Uma das dificuldades mais freqüentes dos iniciantes em interface gráfica é entender a lógica dos programas, na
verdade quando o usuário aprende como o programa se comporta, se torna mais fácil reproduzi-lo.
O que se precisa saber para usar uma listbox é:
1. A listbox apresenta dados armazenado em matrizes, ou seja apresentando uma coluna de matriz.
2. Armazenar dados em uma matriz.
3. Gerar um banco de dados.
1°passo
Inicialmente abra o matlab, abra a parte que corresponde a interface gráfica. Faça o diagrama abaixo no utilizador.
Apague as strings do edit e da listbox, faça isso indo em suas respectivas propriedades (property inspector).
2°passo
Agora é necessário criar um contador para que possamos listas os dados e armazena-los em uma matriz.
function iniciar()
n=1;
save banco_de dados
Após digitar o comando salve o M-file com o nome que fica após o comando function.
function gera_contagem()
load banco_de_dados
n=n+1;
x=findobj('tag','edit1');
xa=get(x,'string');
tabela(n,1)={n};
tabela(n,2)={xa};
lista=findobj('tag','listbox1');
set(lista,'string',tabela(:,2));
save banco_de_dados
Depois salve o arquivo com o nome que está após o comando function.
FIM
O comando findobj funciona como o input, mas com findobj o programador precisa direcionar para onde vai o
comando.
Exemplo:
x=findobj('tag','edit1');
xa=get(x,'string');
Neste caso o commando foi direcionado para seu o edit1,onde depois foi armazenado em uma variável. A variável
xa só fez armazenar em uma variável o que já estava em x no formato string.
Nas interfaces gráficas no matlab é possível gerar painéis que ficam na parte superior da janela do programa. O
programador pode colocar nesses painéis botões como “Arquivo”, ”Editar”, ”Inserir”, ”Formatar”, “Ajuda”.
Ferramentas úteis
uisetfont(object_handles)
uisetfcolor(object_handles)