"Too many input arguments" error on function within GUI code

4 Ansichten (letzte 30 Tage)
Matt
Matt am 10 Jan. 2014
Kommentiert: CS MATLAB am 30 Nov. 2016
Hey! I am writing a GUI that takes in the data from an excel file and then plots in and fits a curve to the data to extract some characteristics of the curve. The code that I have written to build the GUI works fine, but when I try to get the callbacks for the uicontrols to work, I get an error. Here is the code that I am using:
rhUpload = uicontrol(...
'Style', 'pushbutton',...
'String', 'Upload Data',...
'Parent', rhMainFigure,...
'Units', 'normalized',...
'Callback', @rhImport,...
'Position', [0.7 0.25 0.2 0.03],...
'FontSize', 11);
is the code that creates the UI pushbutton
function rhData = rhImport
[file,path]=uigetfile;
rhData = xlsread(fullfile(path,file));
is the code that executes when the pushbutton is pressed. However, when I press the button, I get the following error:
Error using RheologyGUI>rhImport
Too many input arguments.
Error while evaluating uicontrol Callback
Interestingly, I took the function code and created a separate m-file for just that function, and when I execute it, it works fine. Do you know what may be causing this error? Thanks!

Akzeptierte Antwort

Amit
Amit am 11 Jan. 2014
Try rhImport(hObject,eventdata) instead of just rhImport.
  2 Kommentare
Walter Roberson
Walter Roberson am 11 Jan. 2014
Right. Graphics callbacks are automatically passed two arguments.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu App Building 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