Can a UI Figure be centered before displaying?
14 次查看(过去 30 天)
显示 更早的评论
I am using movegui(_______,'center') to center my UI figure. While this works, I'd prefer to not have the UI showing at all until the figure is centered. Is this possible?
0 个评论
采纳的回答
Image Analyst
2019-1-17
编辑:Image Analyst
2019-1-17
Try this:
h = figure; % Create a figure.
h.Visible = 'off'; % Hide it immediately.
h.Units = 'normalized';
% Get original width and height.
originalSize = h.Position
width = originalSize(3)
height = originalSize(4)
% Reassign the size (optional - only if you want to);
width = .5;
height = 0.3; % Whatever you want.
% Get the left and bottom coordinates so we can reposition to there.
xLeft = 0.5 - width/2;
yBottom = 0.5 - height/2;
% Reposition the figure. Here is where it actually gets moved and (optionally) resized.
h.Position = [xLeft, yBottom, width, height]
h.Visible = 'on'; % Now show it.
1 个评论
Cédric Cannard
2023-3-3
Thanks! Even simpler:
h.Visible = 'off'; % hide it immediately
movegui(h,'center') % center
h.Visible = 'on'; % show it
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Contour Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!