can pushbutton work without a function ????

3 次查看(过去 30 天)
Hello guys, i'm having problems with a pushbutton. I created a pushbutton inside a figure, however i cant use a nested function or another .m file to make it work. This button should work as itself. This is the code.
button1=uicontrol(gcf,'style','pushbutton','string','Save projected points','Position', [20 140 150 40],'ButtonDownFcn','1'); %pushbutton
if ((str2double(get(button1,'string'))) == 1)
disp('u did it')
end
however this is not working, how to call the handles of the button or mayby just detect if this was pressed???
maybe is an stupid question, but thanx anyway

采纳的回答

Geoff Hayes
Geoff Hayes 2014-9-16
Jules - use Callback instead of ButtonDownFcn to detect when the button has been pressed. Try something like the following
function example_gui
button1=uicontrol(gcf,'style','pushbutton','string',...
'Save projected points', ...
'Position', [20 140 150 40], ...
'Callback',{@buttonCallback});
function buttonCallback(hObject,eventData)
disp('u did it')
end
end
The buttonCallback is a nested function within the main exmaple_gui code. When you run the above, and press the button, you will observe u did it written to the console.

更多回答(1 个)

Image Analyst
Image Analyst 2014-9-16
You need to define a callback function. See this http://www.mathworks.com/matlabcentral/fileexchange/24861-41-complete-gui-examples if you insist on "rolling your own" GUIs instead of using GUIDE.

类别

Help CenterFile Exchange 中查找有关 Interactive Control and Callbacks 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by