Le programmeur AMOS Professional s'attend à pouvoir produire des sélecteurs de fichiers, boîtes d'alerte et panneaux de contrôle à l'écran en quelques lignes de code simples. L'ensemble des commandes de fenêtrage présenté dans ce chapitre vous permet de créer des boîtes de dialogue interactives en limitant les opérations de texte et de graphiques à des zones sélectionnées de l'écran courant.
Une "fenêtre" est simplement une zone d'affichage rectangulaire, qui doit d'abord être ouverte pour qu'une vie électronique puisse y circuler. Votre écran courant est considéré comme une fenêtre et est ouvert automatiquement par le système AMOS Professional en tant que fenêtre numéro zéro. Toutes les autres fenêtres doivent être ouvertes par vous, et il est recommandé de ne pas rouvrir la fenêtre zéro ni de modifier sa taille ou sa position.
Création de fenêtres
WIND OPEN
instruction : créer une fenêtre
Wind Open numéro,x,y,largeur,hauteur
Wind Open numéro,x,y,largeur,hauteur,bordure
La fenêtre ouverte par cette instruction sera affichée à l'écran et utilisée pour toutes les opérations de texte ultérieures jusqu'à nouvel ordre. WIND OPEN doit être accompagnée d'un numéro de fenêtre (n'oubliez pas que zéro est déjà attribué à l'écran courant), suivi des coordonnées x,y graphiques définissant le coin supérieur gauche de la nouvelle fenêtre, puis de la largeur et de la hauteur de la nouvelle fenêtre exprimées en nombre de caractères. Vous pouvez également spécifier une bordure optionnelle, avec des valeurs allant de 1 à 16.
Comme l'Amiga utilise son blitter pour dessiner les fenêtres, elles doivent toujours être alignées sur une limite de 16 pixels. AMOS Professional arrondit automatiquement vos coordonnées x au multiple de 16 le plus proche. De plus, si vous avez spécifié une bordure pour votre fenêtre, les coordonnées x et y seront augmentées de 8 pixels supplémentaires. De cette façon, vous pouvez être sûr que vos fenêtres commencent toujours à la bonne limite d'écran. Il n'y a pas de restrictions de bordure sur les coordonnées y. Les titres peuvent également être inclus dans les bordures de fenêtre, ce qui sera abordé un peu plus loin. Essayez cet exemple :
E> For W=1 To 3 Wind Open W,(W-1)*96,50,10,15,W Paper W+3 : Pen W+6 : Clw Print "Window";W Next W
WINDOW
instruction : changer la fenêtre active
Window numéro
Cette commande définit la fenêtre spécifiée comme fenêtre active, à utiliser pour toutes les futures opérations de texte. Un système de sauvegarde automatique permet de redessiner le contenu des fenêtres, comme expliqué ci-dessous.