GUI全屏和居中

时间:2014-04-29 06:49:30

标签: matlab user-interface matlab-guide

我试图将全屏属性设置为我的GUI

set(gcf, 'units','normalized','position',[0 0 1 1]);

这对我不起作用,我的窗口没有居中,并且在GUI上方有一个matlab标题栏。

我发现很多主题使用它,不是版本问题吗?我使用的是Matlab R2012a, 有什么解决方案吗?

谢谢!

ps:它是全屏但没有居中

enter image description here

3 个答案:

答案 0 :(得分:3)

通常,可以通过获取底层Java Frame对象并调用其setMaximized方法来最大化数字窗口:

jf = get(handle(gcf), 'JavaFrame');
jf.setMaximized(true)

如果这不起作用,可能的原因是对该图形窗口禁用了调整大小。您应该可以通过这种方式重新启用调整大小:

set(gcf, 'Resize', 'on')

当然,如果它不是当前的数字,请用相应数字的句柄替换gcf

答案 1 :(得分:1)

你可以尝试:

set(0,'units','pixels')
screensize = get(0,'screensize')

fh = figure(....)
...

set(fh, 'units','pixels','Position', screensize);      %// without menubar
%// or
set(fh, 'units','pixels','OuterPosition', screensize); %// with menubar

'parent' 0 的默认单位通常是像素,如果您想确保不弄乱其他功能,请在开头添加以下内容:

defaultunits = get(0,'units')

最后:

set(0,'units', defaultunits)

答案 2 :(得分:0)

你几乎是对的:

set(gcf, 'units','normalized','OuterPosition',[0 0 1 1]);