How to create a GUI with changing buttons?

11 ビュー (過去 30 日間)
beginner94
beginner94 2019 年 9 月 4 日
回答済み: CAM 2019 年 10 月 17 日
Good morning,
I am looking for a possibility to create a GUI (with GUIDE, if possible) with changing buttons. This means, that the GUI offers two seperate bundles of functions and I would like the user to choose at the beginning which bundle to use and the other bundle to disappear, to fold up, or something similar.
Does anybody know how to do this?
Thank you!
(P.s.: I am still working with Matlab R2007b and I don't have to possibility to upgrade)
  6 件のコメント
beginner94
beginner94 2019 年 10 月 17 日
@Adam
Is it possible to combine programmatic GUI parts and a GUI made with GUIDE? Or do I need to rebuild an entire GUI if I want to incorporate collapsible panels?
The toolbox is unfortunately only compatible with Matlab R2010 or later.
Thank you
Adam
Adam 2019 年 10 月 17 日
You can add programmatic components to panels that you lay out as placeholders in GUIDE. You can't put GUIDE components inside programmatic ones though, only the other way round. So you can have a mostly GUIDE-based GUI in which you put an empty panel (for which you can turn off border, etc if you wish, to make it invisible).
Then in your code you can use this panel as a parent for whatever you want to do programmatically, including tabbed panels, layouts, java components, or anything you wish.

サインインしてコメントする。

回答 (1 件)

CAM
CAM 2019 年 10 月 17 日
Another possibility is to use the same set of buttons for both options, but assign associated properties (String label) within the OpeningFcn. You can do this with a separate mat-file that holds a table (or cell array) of settings for each button and bundle option. (Table columns: [Option1], [Option2], ... . Table rows: button1Label, button1FcnHandle, button2Label, ...).
OpeningFcn: Load the file. Ask the user for their bundle choice. Create a "subtable" of the settings based on the bundle choice. Save the subtable to the UserData property of one of the objects (or guidata or appdata). Assign the button labels from the subtable.
When the user clicks a button, read the subtable from UserData. Look up its function handle (@MyFcnHandleName) for that button in the subtable and run it.
fhAnalysis = str2func(tblWorking(button2FcnHandle));
[output] = fhAnalysis(inputs);

カテゴリ

Help Center および File ExchangeMigrate GUIDE Apps についてさらに検索

製品


リリース

R2007b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by