次のコードは3つのラジオボタンを作成します。選択機能は、適切なコンテンツが表示される確認します:Matlab R2015bコード別ラジオボタン選択
function myui
bg = uibuttongroup('Visible','off',...
'Position',[0 0 .2 1],...
'SelectionChangedFcn',@bselection);
% Create three radio buttons in the button group.
r1 = uicontrol(bg,'Style','radiobutton',...
'String','Option 1',...
'Position',[10 350 100 30],...
'HandleVisibility','off');
r2 = uicontrol(bg,'Style','radiobutton',...
'String','Option 2',...
'Position',[10 250 100 30],...
'HandleVisibility','off');
r3 = uicontrol(bg,'Style','radiobutton',...
'String','Option 3',...
'Position',[10 150 100 30],...
'HandleVisibility','off');
% Make the uibuttongroup visible after creating child objects.
bg.Visible = 'on';
function bselection(source,callbackdata)
display(['Previous: ' callbackdata.OldValue.String]);
display(['Current: ' callbackdata.NewValue.String]);
display('------------------');
end
end
私は(ユーザーがクリックされていない)コードあたりを示す選択と内容を変更したいと思います。 Iのようにコードごとラジオボタンの選択を設定することができます。これは正しいラジオボタンの青いドットを描画
set(bg, 'SelectedObject', r2);
(選択されたと思われる)、しかし、正しい内容が示されていません。 私は 'SelectionChangedFcn'を手で呼び出す必要があると思います。これは、 'callbackdata'を要求することができません。これは 'matlab.ui.eventdata.SelectionChangedData'クラスであり、まだドキュメントがありません。
質問:ラジオボタンの変更をコーディングするときに 'outside'からSelectionChangedFcnを呼び出すには 'callbackdata'を自分で作成する必要がありますか、別の方法がありますか?
質問2:私は「HandleVisibility」が有用である理由とその理由について、小さなヒントをあげています.MatLabのドキュメントはあまりにも謎です。