我使用GUIDE生成一個MATLAB GUI,但是我想在用戶點擊一個按鈕時創建字段。有什麼方法可以在回調中動態添加新的GUI對象嗎?動態添加字段到MATLAB GUI?
5
A
回答
6
完成此操作的一種方法是在開始時創建GUI對象,但將其「可見性」屬性設置爲「關閉」。然後,當用戶點擊一個按鈕時,您將「可見性」屬性重新設置爲「開啓」。這樣,當GUI運行時,您不會製作新的GUI對象,您只需更改它的哪些部分可見或不可見。
編輯:如果你不知道你有多少新的GUI對象需要,直到運行時,這是你如何將新的GUI對象添加到手柄結構(其中hFigure是一個句柄GUI圖):
p = uicontrol(hFigure,'Style','pushbutton','String','test',...
'Callback',@p_Callback); % Including callback, if needed
handles.test = p; % Add p to the "test" field of the handles structure
guidata(hFigure,handles); % Add the new handles structure to the figure
那麼您需要當然必須寫新的GUI對象的回調函數(如果它需要一個),這可能會是這個樣子:
function p_Callback(hObject,eventdata)
handles = guidata(gcbf); % This gets the handles structure from the figure
...
(make whatever computations/changes to GUI are needed)
...
guidata(gcbf,handles); % This is needed if the handles structure is modified
我在上面的代碼中使用的感興趣的函數有:GUIDATA(用於存儲/檢索GUI的數據)和GCBF(獲取其回調當前正在執行的對象的父圖的句柄)。
3
使用UICONTROL,您將能夠添加'字段'(稱爲uicontrols或小部件)。
您將要指定樣式來獲取編輯框,按鈕等等
你實際上可能想擁有所有的部件已經存在的指南,然後只需更改知名度或啓用財產根據需要。
你可以找到關於GUI構建我的視頻教程在這裏MATLAB: http://blogs.mathworks.com/videos/category/gui-or-guide/
這應該在GUI構建覆蓋和許多相關的話題。
相關問題
- 1. 動態字段添加到對象在MATLAB
- 2. 將MATLAB GUI添加到MATLAB代碼中
- 3. MVVM動態添加字段到視圖
- 4. 動態添加字段到NutchDocument
- 5. 將動態字段添加到Uploadify
- 6. 動態字段添加到http_build_query
- 7. 動態字段添加到Django模型
- 8. 動態添加ID到輸入字段
- 9. 動態添加字段到solr
- 10. Python:動態添加字段到對象
- 11. 動態添加字段到CollectionType
- 12. xCode動態添加字段
- 13. 動態添加字段
- 14. jQuery - 動態添加字段字段
- 15. 動態添加gui組件?
- 16. 添加等待條到MATLAB gui
- 17. 如何在MATLAB GUI中動態添加編輯框?
- 18. 在動態添加的元素中動態添加字段Jquery
- 19. 動態添加多個字段到Django Model Admin只讀字段
- 20. 中添加動態文本字段添加到HTML表格
- 21. 動態添加JavaScript無法在IE中找到動態添加的字段
- 22. Android - 動態添加片段
- 23. 動態添加到字典
- 24. 動態添加和刪除字段jquery
- 25. 擴展Ext.data.Model(動態添加字段)
- 26. 點擊添加2個動態字段
- 27. 如何添加動態字段?
- 28. 如何動態添加輸入字段?
- 29. Javascript - 動態添加輸入字段
- 30. 驗證動態添加輸入字段
我可以將創建的uicontrol對象添加到生成的手柄嗎?像設置(handles.test,uicontrol_element) – victor 2009-07-07 17:29:47
當你使UICONTROL,捕獲句柄: handles.newWidget = uicontrol(.......) – MatlabDoug 2009-07-07 19:16:38