2
我建立一個Matlab GUI,該GUI讓用戶使用一些交互式工具用於圖像處理(不具有圖文件中的單個M文件)的工具欄,
像imrotate
的圖像的旋轉和角參數和用bwareaopen
和區域參數清除像素。matlab的GUI與M文件
起初,我想用我的M文件與somehthing繪製工具,如
function myGUI(grayI)
h_fig = figure;
h_ax = imshow(grayI);
title('Drag line and press button to rotate image');
ImgSize = size(grayI);
h_lev = imline(gca, [ 0.2*ImgSize(2), 0.1*ImgSize(1); ...
0.8*ImgSize(2) 0.1*ImgSize(1) ]);
h_lev.addNewPositionCallback(@LineUpdateFcn);
% text for the angle
h_txt = uicontrol('Style','text','String','Angle = []', 'unit', 'norm', ...
'pos',[0 0.9 .1 .05]);
%add rotate button
h_btn = uicontrol('unit','norm','pos',[0 0.95 .1 .05]);
set(h_btn,'string','Rotate','callback',@RotateImageWithLever);
% save the elements data in figure
setappdata(h_fig,'h_lev',h_lev);
setappdata(h_fig,'h_ax',h_ax);
setappdata(h_fig,'h_txt',h_txt);
% wait for user to close figure
waitfor(h_fig);
,但那時,我發現工具欄的設計都爲內置類FileExchange Fireworks和想,也許我錯過以正確和簡潔的方式設計我的工具欄的類和內置uitoolbar
命令。
從單個mfile設計我的工具欄的任何建議?