matlab GUI 中建GUI,Matlab_GUI实现“层次分析法”动态GUI界面问题

function test1 ()

clc;

clear all;

figSize = [.6 .9];

figPos =[(1-figSize)/2 figSize];

hfig=figure(...

'Units','normalized',...

'Menubar','none',...

'Toolbar','none',...

'NumberTitle','off',...

'Name','层次分析法',...

'Position',figPos,...

'Visible','on' );

hlayerbutton=uicontrol(...

'Parent',hfig,...

'Style','pushbutton',...

'String','  ',...

'Fontsize',10,...

'Units','normalized',...

'Position',[.4 .82 .1 .06],...

'Callback',@layer);

function layer(hObj,evdt,handles)

%信息流线

uicontrol(...

'Parent',hfig,...

'Style','text',...

'Units','normalized',...

'Backgroundcolor',[0 0 0],...

'String',' ',...

'Position',[0.45 0.8 0.003 0.025]);

uicontrol(...

'Parent',hfig,...

'Style','text',...

'Units','normalized',...

'String','请输入该指标名称:',...

'FontSize', 10,...

'Position',[.7 .9 .16 .02]);

hLayerName= uicontrol(...

'Parent',hfig,...

'Style','edit',...

'Units','normalized',...

'FontSize', 8,...

'String',' ',...

'Position',[.88 .9 .1 .03]);

uicontrol(...

'Parent',hfig,...

'Style','text',...

'Units','normalized',...

'String','请输入下层子标个数:',...

'FontSize', 10,...

'Position',[.7 .87 .15 .02 ]);

hLayerNum= uicontrol(...

'Parent',hfig,...

'Style','edit',...

'Units','normalized',...

'FontSize', 8,...

'String',' ',...

'Position',[.88 .86 .06 .03]);

hlaylerInforButton1=uicontrol(...

'Parent',hfig,...

'Units','normalized',...

'Style','pushbutton',...

'String','确定',...

'Position',[.9 .8 .06 .03],...

'Callback',@laylerInforButton1);

function laylerInforButton1(hObj,evdt,handles)

A=get(hLayerNum,'String');

a=str2num(A);

%指标控件的大小设置

totalhedit = 0.06;

totalwedit =0.8/a;

hedit=2/3*totalhedit;

wedit=3/5*totalwedit;

ud.text2 =uicontrol(...

'Parent',gcbf,...

'Style','text',...

'Units','normalized',...

'Backgroundcolor',[0 0 0],...

'String',' ',...

'Position',[0.1+1/2*wedit 0.73+hedit+0.03  0.8-totalwedit+0.0001  0.003]);

%第二层控件的位置设置

for i=1:a

bx=(i-1)*totalwedit+0.1;

by=0.73;

pushbutton(i)= uicontrol(...

'Parent',gcbf,...

'Style','pushbutton',...

'String',' ',...

'units','normalized',...

'Position',[bx by wedit hedit],...

'Callback',{@layern,i});

%信息流线

uicontrol(...

'Parent',gcbf,...

'Style','text',...

'Units','normalized',...

'Backgroundcolor',[0 0 0],...

'String',' ',...

'Position',[bx+1/2*wedit by+hedit  0.003  0.03]);

end

str1=get(hLayerName,'string');

set( hlayerbutton,'String',str1);

end

end

end

function layern(hObj,evdt,handles)

end

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值