window_get_visible_rects(x1, y1, x2, y2);
参数 | 描述 |
---|---|
x1 | 矩形的左边界。 |
y1 | 矩边的顶部边界。 |
x2 | 矩形的右边界。 |
y2 | 矩形的底部边界。The bottom edge of the rectangle to check. |
返回: 数组
使用这个函数你可以查找 (x1,y1) 到 (x2,y2)矩形范围内的每个附加显示器的重叠区域。对于每个显示器,这个函数将返回8个值添加到一个数组中(比如你有两个显示器,数组长度将是16),值[0~3] 对应 overlapx1、 overlapy1、 overlapx2、 overlapy - 定义显示器里的重叠区域,如果无重叠,将设置为 0,0,0,0 - 值 [4~ 7] 对应 monitorx1、 monitory1、 monitorx2、 monitory2 - 它们是虚拟显示器空间上的坐标。这个可以用来测试是否一个保存的窗口位置即将显示或隐藏(用户可能已经断开与外部监视器的连接,或者窗口移出了屏幕,造成了窗口位置保存的是一个无效值),比如下面的例子。
var wx = window_get_x();
var wy = window_get_y();
var ww = window_get_width();
var wh = window_get_height();
display_data = window_get_visible_rects(wx, wy, wx + ww, wy +
wh);
display_num = array_length_1d(display_data) / 8;
上述代码将生成一个包含显示器信息的一维数组保存到变量 display_data,同时创建变量 display_num 保存找到的激活的显示器的数目。