Interfejs graficzny użytkownika 67
Tworzenie interfejsu graficznego użytkownika GUI zilustrowano na przykładzie interfejsu sterującego wykreślaniem paraboli o ogólnej postaci
y = ax2 + bx + c.
Należy opracować interfejs graficzny, który steruje następującymi działaniami:
• czytanie z klawiatury wartości współczynników a, b, c,
• rysowanie wykresu paraboli w przedziale x od -20 do +20 krokiem 0.01.
Rozwiązanie powyższego zadania wymagało utworzenia 2 funkcji i 3 skryptów:
• funkcja guirysuj zapisana w pliku guirysuj.m tworzy obiekty interfejsu graficznego użytkownika,
• skrypt edita zapisany w pliku edita.m zamienia wprowadzany z klawiatury łańcuch znaków na wartość liczbową współczynnika a,
• skrypt editb zapisany w pliku editb.m zamienia wprowadzany z klawiatury łańcuch znaków na wartość liczbową współczynnika b,
• skrypt editc zapisany w pliku editc.m zamienia wprowadzany z klawiatury łańcuch znaków na wartość liczbową współczynnika c,
• funkcja parabola zapisana w pliku parabola.m oblicza punktu paraboli dla wczytanych wartości liczbowych a, b, c, a następnie tworzy nowe okno, w którym umieszcza wykres paraboli.
function fig = guirysuj
hO = figurę('Units','points', ...
'Position',[240 40 340 340], ...
'Tag','Okno przykładowego GUI'); set(gcf, 'NumberTitle 1, ' off', .. .
'Name1 Parabola y = a*x~2 + b*x + c');
%Obiekt opisu GUI
hOO = uicontrol('Parent',hO, ...
'BackgroundColor',[0.8 0.8 0.8], ...
'Position1,[10 300 300 40], ...
'String','Program czyta wartości współczynników a, b, c oraz rysuje wykres paraboli', ...
'Tag','opisgui');
^utworzenie napisu "Wpisz wartości współczynników a, b, c" hOOO = uicontrol('Parent',hO, ...
'BackgroundColor',[0.8 0.8 0.8], ...
'Position',[10 250 300 40], ...
'String','Wpisz do poniższych okienek własne wartości współczynników a, b, c ', ...