How to create a callback for radio buttons

101 ビュー (過去 30 日間)
Leon
Leon 2021 年 3 月 16 日
コメント済み: Leon 2021 年 3 月 16 日
I have a group of radio buttons with 3 choices (app.mode1, app.mode2, and app.mode3) in app-designer. When a user clicks one of the radio buttons, I want the name of a separate button to be changed to something else. For example: mode 1: "load", mode 2: "plot", mode 3: "display". I'm able to create a call back for the group of radio buttons as below:
function modeSelectionChanged(app, event)
selectedButton = app.mode.SelectedObject;
end
end
But I have no idea as to how to write the following codes. Would someone please help me out?
Many thanks!

採用された回答

Cris LaPierre
Cris LaPierre 2021 年 3 月 16 日
編集済み: Cris LaPierre 2021 年 3 月 16 日
Assuming your button has the name app.Button, and your radio buttons are labeled 'Mode1', 'Mode2', and 'Mode3', something like this
% Selection changed function: Mode
function ModeSelectionChanged(app, event)
selectedButton = app.Mode.SelectedObject;
switch selectedButton.Text
case 'Mode1'
app.Button.Text = "Load";
case 'Mode2'
app.Button.Text = "Plot";
case 'Mode3'
app.Button.Text = "Display";
end
end
  3 件のコメント
Cris LaPierre
Cris LaPierre 2021 年 3 月 16 日
What are you expecting it to do?
When I tested it, it changes the displayed text on app.Button based on the selection of the radio buttons. Again, you must label your buttons 'Mode1', etc for it to work.
You can make it a little more generic if you use the Value property instead
% Selection changed function: Mode
function ModeSelectionChanged(app, event)
selectedButton = app.Mode.SelectedObject;
switch selectedButton.Value
case 1
app.Button.Text = "Load";
case 2
app.Button.Text = "Plot";
case 3
app.Button.Text = "Display";
end
end
Leon
Leon 2021 年 3 月 16 日
That was indeed the problem!
I had the previous issue because I was using selectedButton.Text, but in my cases, they were the Values. Now it is working.
Many thanks!

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeInteractive Control and Callbacks についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by