window_get_visible_rects(x1, y1, x2, y2);
| Argument | La description |
|---|---|
| x1 | Le bord gauche du rectangle à vérifier |
| y1 | Le bord supérieur du rectangle à vérifier. |
| x2 | Le bord droit du rectangle à vérifier |
| y2 | Le bord inférieur du rectangle à vérifier. |
Retours: Array
Avec cette fonction, vous pouvez trouver la zone de chevauchement du rectangle définie par (x1, y1) à (x2, y2) sur chacun des affichages attachés. La fonction retournera un tableau avec 8 valeurs par affichage (ie: si vous avez deux affichages, le tableau aura une longueur de 16 indices), où les valeurs [0... 3] correspondent à overlapx1, overlapy1, overlapx2, overlapy2 - définir la zone de chevauchement sur cet affichage et sera mis à 0,0,0,0 si aucun chevauchement - et les valeurs [4... 7] correspond à monitorx1, monitory1, monitorx2, monitory2 - les coordonnées de l'affichage dans l'espace d'affichage virtuel. Cela peut être utilisé pour tester si une position de fenêtre enregistrée sera visible ou non (l'utilisateur peut avoir déconnecté un moniteur externe ou déplacé la fenêtre hors écran qui a laissé la position de la fenêtre qui a été enregistrée comme non valide), par exemple.
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;
Le code ci-dessus va générer un tableau 1D conservé dans la variable display_data contenant les informations sur les affichages, ainsi que créer la variable display_num pour contenir le nombre d'affichages actifs trouvés.