You are on page 1of 10

B GIO DC V O TO

TRNG I HC BCH KHOA TP.HCM

Bo co bi tp ln Gii tch 2
TI: Tm hiu v GUIDE trong Matlab

Ging vin hng dn : Hong Hi H


Sinh vin thc hin:
Mssv :
L Anh Duy
Nguyn Cng Duy
Nguyn Minh Hong
Trn L Minh Sang

TP.HCM 27/7/2016

1410560
1410577
1411323
1413258

I)GUIDE L G :

-GUI (Graphical User Interface) l giao din ha c iu khin bi nhiu


thanh cng c c ngi lp trnh to sn, cho tng tc gia ngi dng l
giao din chng trnh. Mi chng trnh c ngi lp trnh tp sn giao
din thc hin mt vi chc nng c ngi lp tnh to sn v giao tip vi
ngi s dng.
-ng dng ca Matlab lp trnh giao din rt mnh v d thc hin, n c th
to ra giao din ngi dng tng t VBB, C++ GUI bao gm y cc
chng trnh h tr nh thc hin php ton LOGIC, m phng khng gian
2D,3D, c hin th d liu, lin kt a phng tin.Giao tip vi ngi dng
thng qua hnh nh, cc nt nhn thc thi ... Hu ht GUI ch thc hin (tr
li) lnh ngi dng thng qua cc tc ng ca ngi dng ln giao din,
ngi s dng khng cn bit cu trc chng trnh vn c th thc hin
c. GUI c thc hin thng qua cc hm CALLBACK. Khi ngi dng
tc ng ln giao din bng cc cch khc nhau, hm CALLBACK s c
gi thc thi.

II)Bt u thao tc vi GUI:


1)Khi ng Gui:
-Nhp lnh GUIDE trong command window .
-Hin th ca s GUIDE Quick start nh hnh sau:

-Chn: Dng Blank GUI (Default): tao mt giao din gui bt u vi


giao din trng. Cc dng cn li khi ng GUI vi mt giao din c
to sn.

+ Ch : Trong Matlab, GUI h tr sn hp thoi cng c Modal Question


Dialog to ra giao din vi 2 nt ty chn yes no question thc thi
lnh. Ta c th ng dng ta lnh thot khi chng trnh bng nt nhn
Exit. Nhp chn OK to mt giao din bt u vi giao din trng. ta c
hnh nh giao din trong GUI nh sau: Trc khi to giao din ta lu File li,
Matlab s t ng lu 2 file, mt file ui .m v mt file ui .fig, hoc ta c
th nhn F5, Matlab s chuyn ng dn n th mc lu file, chn ni cn
lu v nhn Save.

2)M t chc nng cc cng c giao din:

- Trong giao din trn chng ta c th thao tc ty bin cc thanh cng c


ph hp vi mc ch s dng. M t chc nng cc cng c c bn:
(1): Nhp chut vo thay i rng ca giao din
(2):L ni cn chnh cc nt, biu tng trn giao din.
(3): L ni to giao din con lin kt vi giao din chnh.
(4): Nt Play (Run) thc thi chng trnh. Pha bn tri l nhm cc biu
tng c Matlab GUI h tr sn:
+ Push Button: l nt nhn, khi nhn vo s thc thi lnh trong cu trc hm
callback ca n
+ Slider: l thanh trt cho php ngi dng di chuyn thanh trt thc
thi lnh.
+ Radio Button: N ging nh Check Box nhng thng c s dng
to s la chn duy nht, tc l 1 ln ch c chn 1 trong s cc nhm
nhiu nt. Khi mt c chn th cc cn li trong nhm b b chn.
+ Check box: S dng nh du tch (thc thi) vo v c th check nhiu
thc thi
+ Edit Text: l ni cc k t c nhp vo t ngi dng, ngi dng c th
thay i c
+ Static Text: L cc k t c hin th thng qua cc callback, hoc thng
thng vit nhn cho cc biu tng, ngi dng khng th thay i ni
dung.

+ Pop-up Menu: m ra danh sch cc lc chn khi ngi dng nhp chut
vo. Ch chn c 1 mc trong danh sch cc mc.
+ List Box: hp thoi danh sch cch mc, cho php ngi dng chn mt
hoc nhiu mc.
+ Toggle Button: l nt nhn c 2 iu khin, khi nhp chut v nh ra, nt
nhn c gi v lnh thc thi, khi nhp chut vo ln th 2, nt nhn nh ra,
hy b lnh va thc thi.
+ Table: to ra mt bng tng t trong Excel.
+ Axes : y l giao din ha hin th hnh nh, n c nhiu thuc tnh bao
gm: khng gian 2D (theo trc ng v trc ngang), 3D (hin th khng gian
3 chiu) .
+ Panel: To ra mt mng nhm cc biu tng li vi nhau gip ta d kim
sot v thao tc khi di chuyn
+ Button Group: qun l s la chn ca nt Radio Button.
+ Active Control: Qun l mt nhm cc bt hoc cc chng trnh lin quan
vi nhau trong Active

3)Thit k giao din:


-Trong phn ny, gii thch cc thng s trong Inspector ng thi chnh
sa trn tng hp thoi s c trnh by song song.
- THIT K GIAO DIN:
+Nhn t hp phm Ctrl + S thc hin lu file, sau khi chn ng dn
lu file ,
(Ch khng lu file vi cc bin c bit hoc
bng cc con s khi u).
+Nhn save Matlab s t ng to ra 2 file gm mt file .m v mt file .fig,
trong file .m l Mfile cha cc hm Matlab to sn h tr giao din. Ln
lt ko th cc nt nh hnh sau: Mi hp thoi c Inspector , bng cch
nhp p chut vo hoc chut phi chn Property Inspector, hp thoi
Inspector hin ra nh sau, dung thanh trt ko xung xem ht chc nng.

III) Mt s hm trong GUIDE:


- Hm callback c lp trnh cho cc nt button, checkbox, edit text
nhng static text v axes th khng c hm callback. Mi mt callback
c vit vi cu trc nh sau: function Tag_Callback(hObject, eventdata,
handles)
- Vi Tag chnh l gi tr ca Tag m ta t khi to giao din. Cc hm
cha bn trong callback bao gm hObject, evendata ,handles :
+ hObject l hm truy cp ni b ca mi function ring l
+ Evendata l hm xc inh thuc tnh ca function
+ Handles l hm truy cp lin kt gia cc function, n bao gm tt c cc
cu trc ca ngi dng, c s dng truy xut qua cc iu khin khc.
Hm Get cho php ta gi thuc tnh ca i tng. Hm Set cho php ta t
gi tr cho thuc tnh ca i tng.
- Cch thc thi hm: phn ny tng cu lnh s c gii thch khi thc
thi. Khi cn chnh xong ton b giao din trong GUI, nhn F5 (hoc nhn
t hp phm Ctrl + T hoc nhp vo biu tng trn thanh Menu). Khi Run,
Matlab s t chy file .m v hin th dao din ha ln mn hnh. y ta
bt u thao tc vi file .m

IV)ng dng GUIDE vo gii bi ton cho:


:Cho hm f(x,y) =

x + x y +1
x y

.Tnh o hm

To giao din:
-Ln lt ko th cc nt nh hnh sau:

f ' ' xy

ti (2,1).

-Mi hp thoi c Inspector bng cch nhn p chut hoc click chut phi
chn Property chn Inspector.
-Tin hnh thay i cc gi tr nh sau:
+Hp Push Button:
String: Dao Ham.
Tag: daoham.
+Hp Edit text:
String: trng.
Fontsize: 10.
-Sau khi chnh sa cc thong s , ta dung chut di chuyn hp thoai,b tr nh
mong mun, ta c giao din nh sau:

-Nhn F5 ( hoc t hp phm Ctrl +T hoc nhp vo biu tng


trn
thanh menu).
-Khi run, matlab t chy v hin th file.m v giao din ha.
-Quay li mn hnh giao din GUI nhp chut phi hp Dao Ham chn View
callbacks Callback. Sau hm callback s t ng c gi v con tr
chut s tm n v tr ca n trong file .m

-Sau tin hnh vit cu lnh:


+Vit cc cu lnh sau vo bn di :
syms x y
h = get(handles.edit1,'string');

a=eval(h);
g=subs(subs(diff(diff(a,x),y),x,2),y,1);
g=char(g);
set(handles.edit2,'string',g);

Nhn nt Run, matlab s hin th giao din ha, sau ta nhp :


(x+x*(y+1)^1/2)/(x-y) vo trng trn,nhp chut vo hp Dao Ham, kt
qu s hin th di.

You might also like