Documentation Center

  • Trial Software
  • Product Updates

movegui

Move GUI figure to specified location on screen

Syntax

movegui(h,'position')
movegui(position)
movegui(h)
movegui

Description

movegui(h,'position') moves the figure identified by handle h to the specified screen location, preserving the figure's size. The position argument is either a string or a two-element vector, as defined in the tables that follow.

movegui(position) moves the callback figure (gcbf) or the current figure (gcf) to the specified position.

movegui(h) moves the figure identified by the handle h to the onscreen position.

movegui moves the callback figure (gcbf) or the current figure (gcf) to the onscreen position. You can specify 'movegui' as a CreateFcn callback for a figure. Doing so ensures after you save a figure, that figure appears on screen when you reload it, regardless of its saved position. See the following example.

When it is a string, position is one of the following descriptors.

Position StringDescription
northTop center edge of screen
southBottom center edge of screen
eastRight center edge of screen
westLeft center edge of screen
northeastTop right corner of screen
northwestTop left corner of screen
southeastBottom right corner of screen
southwestBottom left corner
centerCentered on screen
onscreenNearest location to current location that is entirely on screen

You can also specify the position argument as a two-element vector, [h,v]. Depending on sign, h specifies the figure's offset from the left or right edge of the screen, and v specifies the figure's offset from the top or bottom of the screen, in pixels. The following table summarizes the possible values.

h (for h >= 0)

Offset of left side from left edge of screen

h (for h < 0)

Offset of right side from right edge of screen

v (for v >= 0)

Offset of bottom edge from bottom of screen

v (for v < 0)

Offset of top edge from top of screen

Applying movegui to a maximized figure window moves the window towards the task bar and creates a gap on the opposite side of the screen about as wide as the task bar. The window might shrink in size by a few pixels. If you use the onscreen option with a maximized figure window, then movegui creates a gap on both the left and upper sides of the screen so that the top-left corner of the figure is visible.

GUIDE and openfig call movegui when loading figures to ensure they are visible.

Examples

Ensure that a saved GUI appears on screen when you reload it, regardless of the target computer screen size and resolution. Create a figure that is off the screen, assign movegui as its CreateFcn callback, save the figure, and then reload it.

f = figure('Position',[10000,10000,400,300]);
% The figure does not display because 
% it is created offscreen.
set(f,'CreateFcn','movegui')
hgsave(f,'onscreenfig')
close(f)
f2 = hgload('onscreenfig');
% The reloaded figure is now visible
 

Move a figure to the bottom left corner of the screen.

f = figure;
movegui(f,'southwest');
 

Move a figure so that it is offset 100 pixels from the bottom and left side of the screen.

f = figure;
movegui(f,[100,100]);

See Also

|

Was this topic helpful?