は、ここでラジオボタングループコンポーネントの値を取得する方法を説明するための簡単な例です:
function simpleGUI
hFig = figure('Visible','off', 'Menu','none', 'Name','Calculator', 'Resize','off', 'Position',[100 100 350 200]);
movegui(hFig,'center') %# Move the GUI to the center of the screen
hBtnGrp = uibuttongroup('Position',[0 0 0.3 1], 'Units','Normalized');
uicontrol('Style','Radio', 'Parent',hBtnGrp, 'HandleVisibility','off', 'Position',[15 150 70 30], 'String','Add', 'Tag','+')
uicontrol('Style','Radio', 'Parent',hBtnGrp, 'HandleVisibility','off', 'Position',[15 120 70 30], 'String','Subtract', 'Tag','-')
uicontrol('Style','Radio', 'Parent',hBtnGrp, 'HandleVisibility','off', 'Position',[15 90 70 30], 'String','Multiply', 'Tag','*')
uicontrol('Style','Radio', 'Parent',hBtnGrp, 'HandleVisibility','off', 'Position',[15 60 70 30], 'String','Divide', 'Tag','/')
uicontrol('Style','pushbutton', 'String','Compute', 'Position',[200 50 60 25], 'Callback',{@button_callback})
hEdit1 = uicontrol('Style','edit', 'Position',[150 150 60 20], 'String','10');
hEdit2 = uicontrol('Style','edit', 'Position',[250 150 60 20], 'String','20');
hEdit3 = uicontrol('Style','edit', 'Position',[200 80 60 20], 'String','');
set(hFig, 'Visible','on') %# Make the GUI visible
%# callback function
function button_callback(src,ev)
v1 = str2double(get(hEdit1, 'String'));
v2 = str2double(get(hEdit2, 'String'));
switch get(get(hBtnGrp,'SelectedObject'),'Tag')
case '+', res = v1 + v2;
case '-', res = v1 - v2;
case '*', res = v1 * v2;
case '/', res = v1/v2;
otherwise, res = '';
end
set(hEdit3, 'String',res)
end
end
あなたは下のこの構文を使用している場合は、ERを取得します
明らかに、入力番号の詳細な検証を追加することができますのように...
素晴らしい答えですが、私はmatlabのGUIプログラミングに精通していません、私はちょうどツールにドラッグアンドドロップ、私はradioButtonグループパネルを追加し、すべてのrbuttonsインディッドを追加するが、私はそれらをすべてに属する方法を知らなかった同じグループ。 – palAlaa
@Alaa:GUIDE内にラジオボタンを作成するときには、パネル内にラジオボタンを作成するときは、 – Amro
のようにしてください。ラジオボタンはプッシュボタンではなく、@ gary comtoisが表示するので、プッシュボタンのコールバック機能の中でラジオボタンのアクションメソッドを呼び出そうとしますが、うまくいきません。何か提案がありますか? – palAlaa