Presentation is loading. Please wait.

Presentation is loading. Please wait.

MATLAB 程式設計入門篇 握把式圖形與 GUI 設計

Similar presentations


Presentation on theme: "MATLAB 程式設計入門篇 握把式圖形與 GUI 設計"— Presentation transcript:

1 MATLAB 程式設計入門篇 握把式圖形與 GUI 設計

2 Handle Graphics概念 握把式圖形Handle Graphics概念 每一個圖形元件視為一個物件Object
MATLAB 程式設計入門篇 Handle Graphics概念 握把式圖形Handle Graphics概念 每一個圖形元件視為一個物件Object Object都有一個獨一無二的握把Handle

3 MATLAB 程式設計入門篇 圖形物件的階層結構 圖形物件階層結構(Hierarchy)

4 階層結構的一個例子

5 圖形物件的性質存取 以 GUI 進行圖形物件的性質存取 MATLAB 5.x MATLAB 6.x MATLAB 7.x
以命令列進行圖形物件的性質存取

6 MATLAB 5.x MATLAB 5.x >>propedit(gcf)
gcf 傳回使用中圖形握把,開啟「性質編輯器」(Property Editor),產生的新視窗如下:

7 MATLAB 5.x 性質編輯器 MATLAB 5.x 物件瀏覽 性質陳列 性質修改

8 MATLAB 6.x MATLAB 6.x >>peaks; % 畫出 peaks 3D 圖
>>propedit; % 開啟性質編輯器

9 MATLAB 程式設計入門篇 MATLAB 5.x 性質編輯器 MATLAB 6.x

10 MATLAB 7.x 性質編輯器 MATLAB 7.x >>peaks; % 畫出 peaks 3D 圖
>>propedit; % 開啟性質編輯器

11 MATLAB 7.x MATLAB 7.x

12 圖形物件的性質存取 以命令列進行圖形物件的性質存取 set 設定某個性質的值 get 取得某個性質的值
findobj 在握把式圖形的階層式結構中,找出您要的物件。 xpsound、travel、truss、lorenz 等指令

13 set範例: t = 0:0.1:4*pi; y = exp(-t/5).*sin(t);
h = plot(t, y); % h 為曲線的握把 set(h,'Linewidth',3); % 將曲線寬度改為 3 set(h,'Marker','o');%將曲線的線標改成小圓圈 set(h,'MarkerSize',20);% 將線標的大小改成 20

14 get範例: >>get(h,”LindWidth”) %取得曲線寬度 ans =3;
>> get(h,'Color') %取得曲線顏色 ans =

15 findobj範例: >> plot(rand(10,2)); % 畫出兩條曲線
>> h=findobj(0,'type','line') % 找出曲線的握把 h = >> set(h,'LineWidth',3); % 經由握把將曲線寬度改為 3

16 MATLAB GUI GUI 的設計 M 檔案 GUIDE 發展環境

17 M檔案 M 檔案的GUI 設計 Uicontrol Mouse Events

18 uicontrol範例1 h = uicontrol; % 產生按鈕 set(h,'String','請按我!');
% 在按鈕表面加入文字「請按我!」 cmd ='fprintf(''有人按我一下喔!\n'');'; % 定義按鈕被按後的反應指令 set(h,'Callback',cmd); % 設定按鈕的反應指令

19 uicontrol範例1

20 UI(User Interface)控制物件
Uicontrol產生UI(User Interface)控制物件 按鈕(Push Button) 滑動棒(Sliding Bar) 圓形按鈕(Radio Button) 框架(Frame) 核計方塊(Check Box) 文字欄位(Edit Box) 列表式選單(List Menu) 下拉式選單(Popup Menu)

21 uicontrol範例2: close all % 關閉所有圖形視窗
uicontrol('style','push','position',[ ]); uicontrol('style','slide','position',[ ]); uicontrol('style','radio','position',[ ]); uicontrol('style','frame','position',[ ]);

22 uicontrol範例2 uicontrol('style','check','position',[200 220 80 30]);
uicontrol('style','edit','position',[ ]); uicontrol('style','list','position',[ ],'string', '1|2|3|4'); uicontrol('style','popup','position',[ ],'string','one|two|three');

23 uicontrol範例2

24 uicontrol的例子 另外一個較複雜uicontrol的例子 Switchyard Programming

25 滑鼠事件 (Mouse Events) 滑鼠事件 (Mouse Events)
WindowButtonDownFcn:滑鼠按鈕按下時反應指令 WindowButtonMotionFcn:滑鼠移動時的反應指令 WindowButtonUpFcn:滑鼠按鈕釋放時的反應指令

26 滑鼠事件的例子 一個滑鼠事件 (Mouse Events)的例子


Download ppt "MATLAB 程式設計入門篇 握把式圖形與 GUI 設計"

Similar presentations


Ads by Google