日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

MATLAB之GUI学习经典举例

發布時間:2025/3/21 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MATLAB之GUI学习经典举例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 1. 設置背景顏色
    • 1.1 通過GUI按鈕設置背景顏色
    • 1.2 通過GUI運行設置背景顏色
  • 2. 錯誤對話框
    • 2.1 “截屏失敗”舉例
  • 3. 計算器
    • 按鈕callback
    • +-*/ callback
    • = callback
    • √ callback
    • ← callback
    • C callback
  • 4. 退出
  • 5. 選擇列表框繪圖
  • 6. 取彈出式菜單里的值

1. 設置背景顏色

1.1 通過GUI按鈕設置背景顏色

function backswitch_Callback(hObject, eventdata, handles) % hObject handle to backswitch (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) ha = axes('units','normalized','position',[0 0 1 1]); uistack(ha, 'down') [fname, pname, index] = uigetfile({'*.jpg; *.bmp'},'選擇背景圖片'); if indexII = imread([pname,fname]);image(II)colormap grayset(ha,'handlevisibility','off','visible','off'); elseerrordlg('選擇背景失敗'); %提示錯誤對話框hDialog = findall(0,'tag','Msgbox_Error Dialog');btn_ok = findall(hDialog,'style','pushbutton');set(btn_ok,'String','確定'); end

1.2 通過GUI運行設置背景顏色

% --- Executes just before computesumprice is made visible. function computesumprice_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to computesumprice (see VARARGIN)% Choose default command line output for computesumprice ha = axes('units','normalized','position',[0 0 1 1]); uistack(ha, 'down') % up,down,可選 II = imread('1.jpg'); image(II) colormap gray set(ha,'handlevisibility','off','visible','off');handles.output = hObject; % Update handles structure guidata(hObject, handles);

2. 錯誤對話框

2.1 “截屏失敗”舉例

% --- Executes on button press in screencapture. function screencapture_Callback(hObject, eventdata, handles) % hObject handle to screencapture (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [fname, ~, index] = uiputfile({'*.jpg'}); if indexa = getframe(computesumprice);%注意不是gcfimwrite(a.cdata,fname); elseerrordlg('導出失敗'); %提示錯誤對話框hDialog = findall(0,'tag','Msgbox_Error Dialog');btn_ok = findall(hDialog,'style','pushbutton');set(btn_ok,'String','確定'); end

3. 計算器

按鈕callback

str_cur = get(handles.display, 'string'); str_cur_val = str2double(get(handles.display, 'string')); current(1) = get(hObject, 'string'); % 判斷初始化是否為0 if str_cur_val == 0set(handles.display,'string',current(1)); elseset(handles.display,'string',[str_cur,current(1)]); end

±*/ callback

str_before = get(handles.display, 'string'); add_str = get(handles.add, 'string'); set(handles.display,'string',[str_before,add_str]);

= callback

equal_sign = get(hObject,'string');%獲取= str_before = get(handles.display, 'string'); %獲取display的字符 answer = eval(str_before);%MATLAB提供的eval函數,可根據字符直接計算,無需格外編寫算法 set(handles.display,'string',strcat(str_before,equal_sign,num2str(answer)));

√ callback

str_before = get(handles.display, 'string'); square_root_str = 'sqrt'; leftk ='('; rightk =')'; set(handles.display,'string',[square_root_str,leftk ,str_before,rightk]);

← callback

textString = get(handles.display,'String'); n=length(textString); t=char(textString); textString=t(1:n-1); set(handles.display,'String',textString)

C callback

set(handles.display , 'string', num2str(0));

4. 退出

h = gcf; close(h);

5. 選擇列表框繪圖

seldata = get(handles.seldata, 'value'); %seldata為列表框tag axes(handles.axes2)switch seldatacase 1plot(t,data1)title('傳聲器1時域數據')case 2plot(t,data2)title('傳聲器2時域數據') otherwisereturn end

6. 取彈出式菜單里的值

winType = get(handles.winType, 'value'); switch winTypecase 1w = hanning(NFFT);case 2w = boxcar(NFFT); case 3w = hamming(NFFT);otherwisereturn end

總結

以上是生活随笔為你收集整理的MATLAB之GUI学习经典举例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。