MATLAB で GUI を作成しており、現在uimenu. さまざまなアクセラレータをさまざまなメニュー アクションに追加しようとしています。
(下記参照) matlabchar(10)のアクセラレータ文字として (改行)を渡すと、そのメニューのアクセラレータ ラベルとして追加されることがわかりました。問題は、ヒットしたときにコールバックが実行されないことです。uimenuCtrl+ EnterCtrl+ Enter
これが機能しない理由はありますか?何か不足していますか?Ctrl+ Enter「現在のセクションを実行」は私の呼び出しをキャンセルしていますか? その場合、上書きできますか?
例
MATLAB がどのように受け入れないかを示す簡単な例Ctrl+ Enter
function test
close all
f=figure;
m=uimenu(f,'Label','test');
uimenu(m,'Label','a','callback',@hittest,'Accelerator','r');
uimenu(m,'Label','b','callback',@hittest,'Accelerator',char(10));
function hittest(h,~)
disp(h.Label)
end
end