321forever 发表于 2011-4-22 03:25

求教用m编GUI时position是如何定义的

我看了有m.file编写GUI的例子中对其中的position不明白。
h=figure('Position',);
hp=uipanel('Title','Main Panel','FontSize',12,...
'BackgroundColor','white',...
'Position',[.25 .1 .67 .67]);
hsp=uipanel('Parent',hp,'title','subpanel',...
'Fontsize',12,'position',[.4 .1 .5 .5]);
hbsp=uicontrol('parent',hsp,'String','push here','Position',,...
'callback','msgbox(''I love matlab'')');
fg1=figure(1);
text=uicontrol(fg1,'style','text','position',,...
'horizontal','left','string',{'标题','输入值='});
uicontrol('style','pushbutton','String','plot','callback',...
'plot(linspace(0,2*pi),sin(linspace(0,2*pi)))','units','point',...
'position',);

想问下为什么在同一figure中有250还有.4的,能帮我解释下这是怎么回事么,是相对坐标还是绝对坐标

zhouyang664 发表于 2011-4-22 21:15

position中的元素如果小于1,应该就是归一化的数据,如果大于1,一般都是几百,那应该是像素。

321forever 发表于 2011-4-22 21:38

本帖最后由 321forever 于 2011-4-22 21:39 编辑

回复 2 # zhouyang664 的帖子

谢谢回复,再请教您几个问题
1.我在网上搜了下归一化处理,是用数组中每一个数除以其中最大的数,这个操作在定义position中有什么特殊用途么。
2.如何凭空想象这些上百的position参数,怎么知道这 倒底是什么位置

zhouyang664 发表于 2011-4-24 14:29

回复 3 # 321forever 的帖子

position归一化中的1是屏幕的长和宽,0.XX你就应该知道大体上在哪了吧!
像素中的最大值就是屏幕分辨率,XXX*XX,比如1280*800,使用归一化的好处是在分辨率不同的屏幕上,程序还可以按照你给定的位置显示,而像素值就不行。

321forever 发表于 2011-4-24 17:36

回复 4 # zhouyang664 的帖子

谢谢,直接用m编gui对于新手,position的确定是有点困难

ChaChing 发表于 2011-4-24 21:59

回复 1 # 321forever 的帖子

1.Position参用的单位是对应Units参数!
2.Units一般有pixels/normalized/inches/centimeters/points/characters, 不同物件其default好像各有不同(没check)
3.help中有"Handle Graphics Object Properties"此资料, 可以看看
4.建议常使用get/set试试就可

meiyongyuandeze 发表于 2011-4-24 22:46

回复 6 # ChaChing 的帖子

谢谢了,这几天正为这个position犯愁呢,ChaChing兄还真是活“百度”啊!

321forever 发表于 2011-4-24 22:48

回复 6 # ChaChing 的帖子

嗯谢谢前辈了,以后我多多留意position
页: [1]
查看完整版本: 求教用m编GUI时position是如何定义的