![]() |
请帮帮忙,我真的一愁莫展了
我就想用GUI,做个简单的输入,和输出的用户界面
功能:就是用户给定数据,然后用我的计算程序计算出来,然后显示到这个界面上 简单的说,就是用户给出 a,b的值, 我来计算c=a+b,然后,我把c显示到界面上。应该怎么做,版主或者高手指点一下,或者给一个例证程序也好,最好用guide做的。还有 我做了一个,出错了Error in ==> abc>pushbutton1_Callback at 127 a=str2num(get(handles.a,'String')) Error in ==> gui_mainfcn at 75 feval(varargin{1:2});,这个是什么意思阿? :lovely: :cry: |
需要运用3个 Edit text 组件和一个 pushbutton组件,其他的静态文本组件自己看着选择添加,
把所有操作放在 pushbutton的callback 函数中,相关语句给出如下 a=str2num(get(handles.edit_a,'String')) b=str2num(get(handles.edit_b,'String')) c=a+b set(handles.edit_c,'String',num2str(c)) 建议把变量 a,b 的初始值写成0,否则需要加入变量是否为数字的判断性语句, |
谢谢, 我是这么做的,可是有个新问题,我是这么解决的,但不知道为什么?
刚开始,我是这么做的,可是,老是出现
Error in ==> abc>pushbutton1_Callback at 127 a=str2num(get(handles.a,'String')) Error in ==> gui_mainfcn at 75 feval(varargin{1:2}); 这样的错误,后来,我把gui初始化中的 if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end 替换成 if nargin == 0 % LAUNCH GUI fig = openfig(mfilename,'reuse'); set(fig,'Color',get(0,'defaultUicontrolBackgroundColor')); handles = guihandles(fig); guidata(fig, handles); if nargout > 0 varargout{1} = fig; end elseif ischar(varargin{1}) % INVOKE NAMED SUBFUNCTION OR CALLBACK try if (nargout) [varargout{1:nargout}] = feval(varargin{:}); % FEVAL switchyard else feval(varargin{:}); % FEVAL switchyard end catch disp(lasterr); end end 这个错误就不出现了,但是我不知道为什么?还望指点:lovely: :lovely: |
因为你的实际问题我不太清楚,但就你在第一次描述的问题中给定的例子,我用给出的关键语句调试是没有问题的.后面你说的问题,最好把你的fig传一份上来,然后附上你的m文件,这样大家可以在自己机器上进行调试,看是问题出在哪里!
|
谢谢了,我后来又调试一下,好了~真的很感谢你
:lol: :lol: :lol: :lol:
|
看别人的问题,不断学习,不断进步,呵呵!!
:lol:
|
回复: 请帮帮忙,我真的一愁莫展了
先从书里面学习一下gui的例子吧,
|
所有时间均为北京时间。现在的时间是 05:10。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.