在MATLAB中将所有数字移动到特定的监视器

Ame*_*ina 10 matlab

我想知道是否有任何已知的方法将MATLAB数字移动到特定的监视器.

我有以下代码片段可以帮助我将所有数据放到前面(我从Mathworks 这里得到它):

%% Bring all figures to front
all_figure_handles = findall(0, 'type', 'figure');
for iCount = length(all_figure_handles):-1:1
   figure(all_figure_handles(iCount))
end
Run Code Online (Sandbox Code Playgroud)

我想知道我是否可以要求MATLAB以类似的方式将所有数字移动到另一个屏幕(即使用手柄all_figure_handles).

或者,如果MATLAB不知道监视器分区,我怎么能将所有数字移动到总屏幕空间的右半部分?(在我的情况下,右半部分应该是右侧的监视器).

Max*_*Max 8

从Matlab图文档:

指定图形大小和屏幕位置

要创建一个四分之一大小的图形窗口并位于左上角,请使用根对象的ScreenSize属性来确定大小.ScreenSize是一个四元素矢量:[left,bottom,width,height]:

scrsz = get(0,'ScreenSize'); figure('Position',[1 scrsz(4)/2 scrsz(3)/2 scrsz(4)/2])

要定位包括菜单栏,标题栏,工具栏和外边缘的完整图形窗口,请以相同方式使用OuterPosition属性.

像这样:

set (gcf(), 'outerposition', [25 500, 560, 470])

此外,在根属性的文档中:

MonitorPositions

[xy宽度高度; xy宽度高度]

主显示器和辅助显示器的宽度和高度(以像素为单位).包含连接到计算机的每台显示器的宽度和高度.主监视器的x和y值为0,0,监视器的宽度和高度以像素为单位指定.

辅助监视器位置指定为:x =主监视器宽度+ 1 y =主监视器高度

在多头系统上查询图形MonitorPositions的值会在单独的行上返回每个监视器的位置.v = get(0,'MonitorPositions')v = xy width height%主监视器xy宽度高%%辅助监视器

使用多个监视器时,ScreenSize属性的值不一致.如果需要特定且一致的值,请使用MonitorPositions属性.