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

조회 수: 6 (최근 30일)
Matt
Matt 2014년 1월 10일
댓글: CS MATLAB 2016년 11월 30일
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!

채택된 답변

Amit
Amit 2014년 1월 11일
Try rhImport(hObject,eventdata) instead of just rhImport.
  댓글 수: 2
Walter Roberson
Walter Roberson 2014년 1월 11일
Right. Graphics callbacks are automatically passed two arguments.
CS MATLAB
CS MATLAB 2016년 11월 30일
Thank you Amit

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 App Building에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by