Callback issue with uiMenu

5 Ansichten (letzte 30 Tage)
Hanif
Hanif am 21 Mai 2013
Having some issues with callback using uimenu, when a certain option is selected I want it to change the color map of the whole figure. Here is my code.
Function Startup
fig = figure('Toolbar','none','MenuBar','none')
Main = uimenu(fig,'Label','File');
ImageSettings = uimenu(File,'Label','Jet',...
'Callback', 'CM1');
end
function CM1
%colormap(jet)
disp('Jet')
end
The error that occurs is
Too many input arguments.
Error while evaluating uimenu Callback
Also I have tried to change my callback from: 'Callback', 'CM1'); to
'Callback', @CM1);
That did not seem to work either.

Akzeptierte Antwort

Jan
Jan am 22 Mai 2013
Bearbeitet: Jan am 22 Mai 2013
The function CM1 requires 2 input arguments as all callbacks:
function CM1(ObjectHandle, EventData)
You do not have to use the values, but they must exist.
Another idea would be an anomyous function to crop the inputs:
'Callback', @(x,y) CM1
But this looks more confusing, in my opinion.
  1 Kommentar
Hanif
Hanif am 28 Mai 2013
I get a really weird error when I do that saying:
Maximum recursion limit of 500 reached. Use set(0,'RecursionLimit',N) to change the limit. Be aware that exceeding your available stack space can crash MATLAB and/or your computer.
Error in CreatingMenus>display
Error while evaluating uimenu Callback

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Interactive Control and Callbacks finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by