⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 maingui.m

📁 这个东西是我在网上下的
💻 M
📖 第 1 页 / 共 4 页
字号:
    legendt(i,5)=text(0.43,.95,'uuuu','color',[.97 .97 .97],'fontsize',7,'parent',ax(i,3),'unit','norm');
    legendt(i,7)=text(0.74,.95,'nnnnnnnnnn  out ','color',[.97 .97 .97],'fontsize',7,'parent',ax(i,3),'unit','norm');
    %----
    legendt(i,8)=text(0.43,.95,'uuuu','color',[.97 .97 .97],'fontsize',7,'parent',ax(i,1),'unit','norm');
    legendt(i,10)=text(0.74,.95,'nnnnnnnnnn  out ','color',[.97 .97 .97],'fontsize',7,'parent',ax(i,1),'unit','norm');
    %----
    legendt(i,12)=text(0.74,.95,'eeeeeeeeeeeeeeeee','color',[.97 .97 .97],'fontsize',7,'parent',ax(i,6),'unit','norm');
    %----
    legendt(i,14)=text(0.74,.95,'eeeeeeeeeeeeeeeee','color',[.97 .97 .97],'fontsize',7,'parent',ax(i,4),'unit','norm');
    %----
    legendt(i,16)=text(0.74,.95,'eeeeeeeeeeeeeeeee','color',[.97 .97 .97],'fontsize',7,'parent',ax(i,2),'unit','norm');
end
lwidth=.03;lheight=.001;
lleft1=.057;lleft2=.19;lleft3=.33;
lbott1=.292;lbott2=.617;lbott3=.957;
rightd=.5;
% lp(1)=uipanel('parent',ap,'bordertype','none','back','g','unit','norm','pos',[lleft1 lbott3-scrpa*.01 lwidth lheight]);
% lp(2)=uipanel('parent',ap,'bordertype','none','back','g','unit','norm','pos',[lleft1 lbott2 lwidth lheight]);
% lp(3)=uipanel('parent',ap,'bordertype','none','back','g','unit','norm','pos',[lleft1 lbott1 lwidth lheight]);
lp(4)=uipanel('parent',ap,'bordertype','none','back','g','unit','norm','pos',[lleft2 lbott3-scrpa*.01 lwidth lheight]);
lp(5)=uipanel('parent',ap,'bordertype','none','back','g','unit','norm','pos',[lleft2 lbott2 lwidth lheight]);
lp(6)=uipanel('parent',ap,'bordertype','none','back','g','unit','norm','pos',[lleft2 lbott1 lwidth lheight]);
lp(7)=uipanel('parent',ap,'bordertype','none','back','r','unit','norm','pos',[lleft3 lbott3-scrpa*.01 lwidth lheight]);
lp(8)=uipanel('parent',ap,'bordertype','none','back','r','unit','norm','pos',[lleft3 lbott2 lwidth lheight]);
lp(9)=uipanel('parent',ap,'bordertype','none','back','r','unit','norm','pos',[lleft3 lbott1 lwidth lheight]);
%----
% lp(10)=uipanel('parent',ap,'bordertype','none','back','b','unit','norm','pos',[lleft2+rightd  lbott3-scrpa*.01 lwidth lheight]);
% lp(11)=uipanel('parent',ap,'bordertype','none','back','b','unit','norm','pos',[lleft2+rightd  lbott2 lwidth lheight]);
% lp(12)=uipanel('parent',ap,'bordertype','none','back','b','unit','norm','pos',[lleft2+rightd  lbott1 lwidth lheight]);
lp(13)=uipanel('parent',ap,'bordertype','none','back','r','unit','norm','pos',[lleft3+rightd  lbott3-scrpa*.01 lwidth lheight]);
lp(14)=uipanel('parent',ap,'bordertype','none','back','r','unit','norm','pos',[lleft3+rightd  lbott2 lwidth lheight]);
lp(15)=uipanel('parent',ap,'bordertype','none','back','r','unit','norm','pos',[lleft3+rightd  lbott1 lwidth lheight]);
for i=2:4
 legendp(i,1:length(lp))=lp;
end

%--------初始页面显示------------
 lines(4,6,3)=0;
 page=4;
 otherpage=default_page+(1:page-1);
 otherpage=mod(otherpage,page);
 ttf=find(otherpage==0);
 otherpage(ttf)=otherpage(ttf)+page;
 for i=1:length(otherpage)
   tl=lines(otherpage(i),:,:);
   tmphandles=[panel(otherpage(i),:),ax(otherpage(i),:),legendt(otherpage(i),:),...
       legendp(otherpage(i),:),tl(:)'];
   tmphandles=squeezezero(tmphandles);
   set(tmphandles,'visible','off');
 end
 %tl=lines(default_page,:,:);
 tmphandles=[panel(default_page,:),ax(default_page,:),legendt(default_page,:),...
     legendp(default_page,:)];
 tmphandles=squeezezero(tmphandles);
 set(tmphandles,'visible','on');

%=====================================
handles.panel=panel;
handles.ax=ax;
handles.legendt=legendt;
handles.legendp=legendp;
handles.lines=lines;

%=============================================================
%                    创建选择按钮
%=============================================================
radio(1)=uicontrol(FI,'style','check','string','CCCCCCCCCCCCCCCCCCCCCCCCc','unit','norm','pos',[.79 .94 .18 .05],'value',1,'fontsize',9,'visible','off');
%-----------
handles.radio=radio;

%=============================================================
%                        创建滚动条
%=============================================================
%-----准备数据----
slider_color=[.9 .9 .9];
pos_ap=get(ap,'pos');
apwidth=pos_ap(3);
if apwidth<=1
    state_h='off';
elseif apwidth>1
    state_h='on';
end
apheight=pos_ap(4);
if apheight<=1
    state_v='off';
elseif apheight>1
    state_v='on';
end
%-----水平滚动条-----
uh=javax.swing.JScrollBar(0,0,255/apwidth,0,255);%JScrollBar(orientation,value,visible,minimum,maximum)
set(uh,'MouseWheelMovedCallback',            @scroll,...   %@scroll
       'AdjustmentValueChangedCallback',     @slide_callback,...
       'UnitIncrement',                      5,... 
       'BlockIncrement',                     15,...
       'enable',                             state_h,...
       'tag',                                'sliderh',...
       'userdata',                           1 ...
    );
[comp container]=javacomponent(uh,[],FI);
set(container,'unit','norm','pos',[.0081 .0136 .969 .0287]);
%-----垂直滚动条-----
uv=javax.swing.JScrollBar(1,0,255/apheight,0,255);
set(uv,'MouseWheelMovedCallback',           @scroll,...   %@scroll
       'AdjustmentValueChangedCallback',    @slide_callback,...
       'KeyPressedCallback',                @keypress_callback,...
       'KeyReleasedCallback',               @keyrelease_callback,...
       'UnitIncrement',                     5,... 
       'BlockIncrement',                    15,...
       'enable',                            state_v,...
       'tag',                               'sliderv',...
       'userdata',                          1 ...
    );
[comp container]=javacomponent(uv,[],FI);
set(container,'unit','norm','pos',[.974 .038 .019 .9005]);
%--------------------
handles.uh=uh;
handles.uv=uv;


%================================================================
%                       创建菜单,工具栏,弹出菜单
%================================================================
M=uimenu(FI,'label','文件(&F)');
me(1)=uimenu(M,'label','初始化...', 'accelerator','I');
uimenu(M,'label','退出','accelerator','Q','callback','delete(gcf)');
MVI=uimenu(FI,'label','仿真(&M)');
mt=uimenu(MVI,'label','开始','accelerator','s','tag','start');
uimenu(MVI,'label','暂停/继续','accelerator','p','callback',{@stop_callback,FI},'tag','stop','userdata',1);
uimenu(MVI,'label','停止','accelerator','r','tag','clear','callback',{@clear_callback,FI});
uimenu(MVI,'label','FFFFFFFFFFFFFFFFFFFFFFFFF...','accelerator','d','callback',{@plotresult,FI},'separator','on');
uimenu(MVI,'label','ttttttttttttttttttt...','callback','result2txt');
uimenu(MVI,'label','MMMMMMMMMMMMMMMMMMMMMM...','callback','montocarlo','accelerator','m');
uimenu(MVI,'label','HHHHHHHHHHHHHHHH...','callback','!INTERFACE/TTTTTTT.exe','separator','on');
me(2)=uimenu(MVI,'label','SSSSSSSSSSSSSSSSSS...','tag','t_traj', 'accelerator','T','enable','off');
uimenu(MVI,'label','CCCCCCCCCCCCCc...','accelerator','O','callback',@controlinput_callback);
MIII=uimenu(FI,'label','设置(&S)');
uimenu(MIII,'label','KKKKKKKKKKKKKKKKKKK...','accelerator','f','callback','filterpattern');
uimenu(MIII,'label','参数配置...','accelerator','e','callback','simconfig');
MII=uimenu(FI,'label','坐标轴(&A)');
uimenu(MII,'label','设置轴范围...','accelerator','l','callback',{@axislimit,FI});
uimenu(MII,'label','网格','accelerator','g','callback',{@grid_callback,{FI,squeezezero(handles.ax)}},'userdata',1);
MII=uimenu(FI,'label','帮助(&H)');
uimenu(MII,'label','目录...','callback',...
    '!INTERFACE/help');
uimenu(MII,'label','脚本...','callback',...
    'heval');
uimenu(MII,'label','关于...','callback',...
    'axes(''parent'',dialog(''unit'',''normalized'',''position'',[.33 .48 .45 .1]),''visible'',''off'');text(.06,0.5,''RRRRRRRRRRRRRRRRRRR1.0,Matlab7.1R14@sp3'');');

%-----------------
handles.menu=me;
set(me(1),'callback',{@initialize,{FI,handles.menu}});
set(me(2),'callback',{@trajshowing,{FI,handles.menu}});
set(mt,'callback',{@start_callback,{FI,handles.menu}});
%-----------------
 CM=uicontextmenu;
    uimenu(CM,'label','设定轴范围','callback',{@axislimit,FI});
    uimenu(CM,'label','设为自动轴','callback',{@axisauto,FI});
 set(squeezezero(handles.ax),'UIContextMenu',CM);
%------------------
load iconh;
COMMON=uitoolbar('tag','commontoolbar');
uipushtool('cdata',fshuttle,'TooltipString','iiii','ClickedCallback',{@initialize,{FI,handles.menu}});
uipushtool('cdata',ftraj,'TooltipString','hhhhhhhhhhhhhhhhhhhh','ClickedCallback','!INTERFACE/TTTTTTT.exe','separator','on');
uipushtool('cdata',frocket,'TooltipString','ttttttttttttttttttttt','tag','t_traj','ClickedCallback',{@trajshowing,{FI,handles.menu}},'enable','off');
uipushtool('cdata',fbkcolor,'TooltipString','ccccccccccccccccccc','ClickedCallback',@controlinput_callback);
uipushtool('cdata',ffdir,'TooltipString','ssssssssssssssssssss','tag','t_ffdir','ClickedCallback','filterpattern','Separator','on');
uipushtool('cdata',fconfig,'TooltipString','参数配置','tag','t_fconfig','ClickedCallback','simconfig');
uipushtool('cdata',fstart,'TooltipString','开始','tag','start','ClickedCallback',{@start_callback,{FI,handles.menu}},'Separator','on');
uipushtool('cdata',fstop,'TooltipString','sssssssssssssssssss','tag','t_stop','ClickedCallback',{@stop_callback,FI});
uipushtool('cdata',fclear,'TooltipString','sssssssssssssss','tag','t_clear','ClickedCallback',{@clear_callback,FI});
uipushtool('cdata',fdraw,'TooltipString','hhhhhhhhhhhhhhhhh','tag','t_draw','ClickedCallback',{@plotresult,FI},'Separator','on');
uipushtool('cdata',ftxt,'TooltipString','tttttttttttttttt','tag','t_txt','ClickedCallback','result2txt');
uipushtool('cdata',fmc,'TooltipString','MMMMMMMMMMMMMMMM','ClickedCallback','montocarlo');

uipushtool('cdata',fgrid,'TooltipString','网格','tag','t_grid','Separator','on',...
    'ClickedCallback','grid','userdata',1);


%=====================================================
%                   保存句柄数据
%=====================================================
set(FI,'userdata',handles);
figures=get(0,'userdata');
figures.FI=FI;
set(0,'userdata',figures);
set(FI,'currentaxes',ax(1,1));
currentaxes=get(FI,'currentaxes');
setappdata(FI,'currentaxes',currentaxes);
set(currentaxes,'color',[0.1000    0.1000    0.1100]*2);



%=====================================================
%                   Sub fucntions
%=====================================================
function start_callback(hobject,eventdata,handles)
FI=handles{1};
me=handles{2};

if getappdata(FI,'trajload')==0
    ButtonName=questdlg('未初始化,现在初始化吗?', '','确定','取消','取消');
    if strcmp(ButtonName,'取消')
        return
    else
        initialize([],[],{FI,me});
    end
end

 
  mpdata;


try
    set(findobj('tag','start'),'enable','on');
end
    


%-------------------------------------------------------------
function initialize(hobject,eventdata,handles)
fi=handles{1};
me=handles{2};

try
        
            DI=dialog('unit','normalized','position',[.33 .48 .35 .07]);
            AI=axes('parent',DI,'visible','off');      
            text(.06,0.5,'正在初始化,请等待...','parent',AI);
            drawnow;
            setptr(DI,'watch');
            drawnow;
            [name value]=textread('simu.cfg', '%s %s');
            for i=1:length(value)
                sv=str2num(value{i});
                if ~(i==1 || i==11 || i==16 || i==19 || i==25 || i==28 || i==31 || i==35 || i==39 || i==43 || i==47 || i==29 || i==30 || i==48)  
                if (isempty(sv))
                    delete(DI);
                    msgbox('参数配置错误,请检查!','错误','error','modal');
                    return
                end
                end
            end
             save('-mat','data.tmp','value');
            trajfile=value{29};
            if (trajfile(1)=='.')
                    figures=get(0,'userdata');
                    trajfile=[figures.mainpath trajfile(3:end)];
            end
            traj_tacan_gcpfile=value{30};
            traj_flir_gcpfile=value{end};
            if ( traj_tacan_gcpfile(1)=='.')
                figures=get(0,'userdata');
                traj_tacan_gcpfile=[figures.mainpath  traj_tacan_gcpfile(3:end)];
            end
            if ( traj_flir_gcpfile(1)=='.')
                figures=get(0,'userdata');
                traj_flir_gcpfile=[figures.mainpath  traj_flir_gcpfile(3:end)];
            end
            try
                load('-mat', trajfile );
            catch
                [trajdata,tm,period,index]=trajread(trajfile);
            end
            control_phi=0;control_la=0;control_h=0;
            try
                load('-mat',traj_tacan_gcpfile);
            end
           tacan_control_h=control_h;tacan_control_la=control_la;tacan_control_phi=control_phi;
           try
               load('-mat',traj_flir_gcpfile);
           end
           flir_control_h=control_h;flir_control_la=control_la;flir_control_phi=control_phi;
           if exist('tarpos')
                 set(me(1),'userdata',{tacan_control_h,tacan_control_la,tacan_control_phi,flir_control_h,...
                    flir_control_la,flir_control_phi,index,period,tm,trajdata,tarpos});
            else
                set(me(1),'userdata',{tacan_control_h,tacan_control_la,tacan_control_phi,flir_control_h,...
                    flir_control_la,flir_control_phi,index,period,tm,trajdata});
            end
            delete(DI);
            setappdata(fi,'trajload',1);
            set(findobj('tag','t_traj'),'enable','on');

catch

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -