如何通过MATLAB应用程序设计师将窗口移动到屏幕中心?目前我正在使用app.my_fig_main.Position
,但此功能仅可用于设置[left bottom width height]
,但我认为如果我在具有不同屏幕分辨率的其他计算机上运行我的应用,我应该有类似movegui
功能的功能并将其设置为center
。 movegui
在应用设计器环境中无效。无论如何要在应用程序设计师中做到这一点?
答案 0 :(得分:1)
不确定我是否误解了您的问题,但您可以使用figposition
功能获取当前分辨率。例如在我的笔记本电脑上:
>> figposition([0, 0, 100, 100])
ans =
0 0 1366 768
表示分辨率为1366x768
然后你可以set(gcf,'position', ... )
到你想要的位置,这样它就是中心。
你甚至可以直接在那里使用figposition
,实际上直接使用百分比来set
数字的位置。
**编辑:**一个例子,根据要求:
% Create Figure Window (e.g. by app designer; it's still a normal figure)
MyGuiWindow = figure('name', 'My Gui Figure Window');
% Desired Window width and height
GuiWidth = 500;
GuiHeight = 500;
% Find Screen Resolution
temp = figposition([0,0,100,100]);
ScreenWidth = temp(3);
ScreenHeight = temp(4);
% Position window in center of screen, and set the desired width and height
set (MyGuiWindow, 'position', [ScreenWidth/2 - GuiWidth/2, ScreenHeight/2 - GuiHeight/2, GuiWidth, GuiHeight]);