matlab gui复选框的对象之有一个,MATLAB GUI中关于复选框的一些问题

四个复选框对应四个函数 ,在最开始要获得输入的变量K和R,在之后的每个复选框要调用以K和R为参数的其他函数。现在有两个问题:

1.输入的K和R不能被之后的参数使用;

2.我想让复选框勾选完之后,点击开始按钮,程序才开始运行;之后点击停止按钮,程序暂停但不退出;然后点击开始可以继续运行。。。。。。。。。。。。。

function varargout = award(varargin)

gui_Singleton = 1;

gui_State = struct('gui_Name',       mfilename, ...

'gui_Singleton',  gui_Singleton, ...

'gui_OpeningFcn', @award_OpeningFcn, ...

'gui_OutputFcn',  @award_OutputFcn, ...

'gui_LayoutFcn',  [] , ...

'gui_Callback',   []);

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

function award_OpeningFcn(hObject, eventdata, handles, varargin)

handles.output = hObject;

guidata(hObject, handles);

function varargout = award_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function nStart_Callback(hObject, eventdata, handles)

function nStart_CreateFcn(hObject, eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function edit2_Callback(hObject, eventdata, handles)

function edit2_CreateFcn(hObject, ~, ~)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white');

end

function start_Callback(hObject, ~, handles)

%% 获取数值范围,并启动定时器

global K;

global R;

K = str2double(get(handles.nStart, 'String')); %获取随机数的起始值

if isnan(K)  %若输入的不是有效的数值,清空输入框并返回

set(handles.nStart, 'String', '')

return;

end

R = str2double(get(handles.nEnd, 'String')); %获取随机数的结束值

if isnan(R)||R>8/9|| R<1/3 %若输入的不是有效的数值,清空输入框并返回

set(handles.nEnd, 'String', '')

return;

end

K = floor(K);

function stop_Callback(hObject, ~, handles)

% --- Executes on button press in checkbox1.

function checkbox1_Callback(hObject, eventdata, handles)

S_Amindecode( K,R );

axes(handles.axes1)

axis([2 5 10^-5 10^0])

SNR =-12:0.2:2 ;

curve=semilogy(SNR,Ber,'-ro');

grid on

hold on

set(curve,'linewidth',2);

xlabel('SNRdB(Es/N0)');

ylabel('BER');

title(['K=',num2str(K),',QPSK,AWGN'])

legend(['R =',num2str(rats(R))])

function checkbox2_Callback(hObject, eventdata, handles)

S_SPAdecode( K,R );

axes(handles.axes1)

axis([2 5 10^-5 10^0])

SNR =-12:0.2:2 ;

curve=semilogy(SNR,Ber,'-ro');

grid on

hold on

set(curve,'linewidth',2);

xlabel('SNRdB(Es/N0)');

ylabel('BER');

title(['K=',num2str(K),',QPSK,AWGN'])

legend(['R =',num2str(rats(R))])

function checkbox3_Callback(hObject, eventdata, handles)

S_SPA_iipdecode( K,R );

axes(handles.axes1)

axis([2 5 10^-5 10^0])

SNR =-12:0.2:2 ;

curve=semilogy(SNR,Ber,'-ro');

grid on

hold on

set(curve,'linewidth',2);

xlabel('SNRdB(Es/N0)');

ylabel('BER');

title(['K=',num2str(K),',QPSK,AWGN'])

legend(['R =',num2str(rats(R))])

function checkbox4_Callback(hObject, eventdata, handles)

S_minBPdecode(K,R) ;

axes(handles.axes1)

axis([2 5 10^-5 10^0])

SNR =-12:0.2:2 ;

curve=semilogy(SNR,Ber,'-ro');

grid on

hold on

set(curve,'linewidth',2);

xlabel('SNRdB(Es/N0)');

ylabel('BER');

title(['K=',num2str(K),',QPSK,AWGN'])

legend(['R =',num2str(rats(R))])

function pushbutton3_Callback(hObject, eventdata, handles)

close

function axes1_CreateFcn(hObject, eventdata, handles)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值