1717474414

1717474414



sentiel, car certaines choses deviendront vite inutiles. Tout d'abord il peut etre important de specifier un label, un "nume-ro de ligne" en quelque sorte, h un pro-gramme Amos-l, pour le cas ou il y aurait plusieurs interfaces differentes (et ce sera frequent, nous en reparlerons). Cest la rai-son du "LAbel 1;". Et parallelement, un programme, ou un sous programme Amos-I se termine toujours par "EXit;".

Ensuite, la premiere instruction qui affiche quelque chose est l'instruction "BOx".

BOx X,Y,Element Box,X+XI,Y+YI;

Elle affiche en effet une boite, une sorte de rectangle plein ameliore. lei il s'agit du modele n°1, d'ou "BOx xx,xx,1,...".

Mais cette commande BOx a un compor-tement un peu particulier. Bień qu'on lui apporte des coordonnćes (abscisses (X, XI) et ordonnees (Y,YI) pour la placer sur 1'ecran, elle arrondira d'office les abscisses au multiple de 8 le plus proche.

Ainsi dans mon exemple, je veux placer au centre une boite de 360 de largeur. Normalement je la place a X=(640-360)/2 = 140, il sera arrondi a 8, soit 140/8=1 7.xx 17*8=136, sous peine de voir ma boite "mangee sur la gauche". Pour la largeur c'est encore plus tordu. II faut qu'el-le soit multiple de la largeur predefinie dans la Ressource bank (dimension que l'on trou-ve dans la listę des elements du Resource Bank Creator, explique plus haut).

Pour Yet Yl, par contrę on peut les placer au pixel pres. Nous verrons bientót com-ment contourner cette limite, mais j'insiste ici car on ne peut pas toujours y echapper. Pour le PRint c'est tout simple, c'est la meme syntaxe que Text (coordonnees gra-phiques, au pixel pres) en Amos, sauf que l'on rajoute la couleur. |e signalerais juste ici qu'en Amos-l les textes ne sont pas entre guillemets mais apostrophes.

(voir listing)

Ensuite vient le bouton, la c'est un peu delicat, mais pas bien mechant. II faut aller chercher 1'image en banque de ce bouton. Pour cela on la dścompacte (unpack en anglais). Puis dans ce bouton nous allons ecrire un texte ("Quit"). Et bien c'est ce qui ce passe dans la syntaxe. On definit le bouton n°1 (BUtton !,...)• Qui sera place d 288,150 (toujours la limite en X des 8, BUtton 1,288,150,...), et la zonę de detec-tion de la souris sera sur 64 pixels de large pour 16 de hauteur (que Ton trouve toujours dans la listę des elements du Bank creator, BUtton 1,288,150,64,16...). Les parametres suivants n'ont pas d'importan-ce pour 1'instant (BUtton 1,288,150,64,16,0,0,1;...).

Mais on s'aperęoit que l'on concatene des instructions Amos-l pour lui dire quelle image decompacter de la banque et quel est le texte a afficher dans ce bouton ("BUtton 1,288,150,64,1 6,0,0,1 ;(UNpack 0,0,BPI 3+; PRint 1 7,4,'Quit',8]....").

Enfin le |BR 0;] permet tout simplement de donner 1'impression quand on clique sur le bouton que celui-ci s'enfonce (en fait tant que le bouton gauche de la souris est enfonce il affiche 1'image 14 (le pourquoi du + du 1 3) et reaffiche 1 3 quand il est relache). On verra que Ton peut aussi para-metrer cela.

Ouf f

Apres c'est tres simple, on cree le dialog n°l (il s'agit d'une sorte de canal, un peu comme pour les ouvertures de fichier, car plusieurs peuvent cohabiter), a partir de

_INT$ :

Dialog Open 1,_INT$

Puis on le lance en le mettant dans une variable bidon :

X»Dialog Run(1,1)

(on lance sur le canal numero un. Dialog Run(l,l), le LAbel numero 1, Dialog Run(l,1).

Et on attend les messages de 1'interface dans une boucle sans fin, avec les diffe-rents cas (ici 1 seul, mais bientót plusieurs...)

Do

DIA=Dialog(l)

Exit If DIA»1

Loop

On "met" les messages de l'interface numśro 1 (Dialog(l)) dans la variable DIA (DIA=....), et on sort de la boucle sans fin si on reęoit le message 1 qui signifie que le bouton 1 a ete presse (le message aurait ete 2 si le bouton s'appelait 2, etc.). Enfantln, non ?

Bref sur cette base nous allons pouvoir construire des interfaces beaucoup plus complexes, qui, par exemple, lieront les boutons ensembles pour faire des check box, ou qui gereront des sliders, comme un requester de fichier... Nous verrons des le mois prochain comment saisir du texte (ce qui peut toujours etre utile...), puis il faudra approfondir les contróles que peut exercer Amos sur 1'interfaee. Voila a bientót, Amossez vous bien.

Erie Cappannelli

' * Premier exemple d'interfaces *

' * sous Amos pro

On affiche une fenótre...

E. Cappannelli

' On charge la banque en mćmoire

Load*AMOSPro_System:APsystem/AmosPro_Default_ Resource.Abk",16

' On declare le numćro de banque a utiliser en tant que ressource Resource Bank 16

Screen Open 0,640,256,8,Hires : Curs Off : Flash Off Palette 0,$6F,$77.$EEE,$F00,$DD,$AA,$FF3 Cis 0

' description de l'interface :

_INT$-"LAbel 1;'

_INT$-_INT$4-BOx 136,78,1,496,178;*

_INT$»_INT$-*"PRint 276,108. 'Hello World',3;"

_INT$ *_INT$ + *BUtton    1,288,150.64,16,0,0,1; [UN

0,0,BPI3♦;PR 17,4,'Quit',8;][BR 0;]"

_INT$=_INT$+“EXi t; *

' point d'entróe de l'interface, et lancement Dialog Open 1,_INT$

X*Dialog Run(1,1)

Do

DIA=Dialog(1)

Fxit If DIA-1 Loop

End


On ouvre l'ecran



Wyszukiwarka

Podobne podstrony:
75 comportement abondant en fourberies ou petites trahisons a chaque fois que cela devient possible.
En ce battant contrę 1’unitarisme et tout autre adversaire, le »nouvel etat de choses«, en regle gen
139 langue. Pour maintenir sa culture, ses racines. Avant tout, quand il y a un bon niveau de vie. C
11 d’etudes a 1’etranger. Elles demeurent toutefois partielles, car il est souvent difficile de sent
II est important de stihteresser aux obligations decoulant du droit au non harcelement, car les obli
334 CHOLERA genicite de la mucinase, ni celle de Fantigćne O de V, cholerae, Tout en admettant que «
2) SYNTHtSE GLOBALE DES DONNEES ACQUISES ■ D un point-de vue physicochimique;

L etre humain comme tout animal est dote drun instinct de survie individuel, plus que celui de 1 esp
864 I/Educateur Prolźtarien suggcsiion de ma part aurait peut-etre pu entralner certains Ó16ves i re
— IV — certaine mesure prćcisćment ce que rhomme d £tat peut Stre tenu de taire. C’est ainsi qu’on a
trera peut-etre un certain accroissement dc la demando d importation do denrćes agricoles produ
Chapitre IV Rendre une sentence ou lfexercice de juger un homme Tout au long des quatre-vingts ans o
208 l air, qui regnait peut-etre le jour de l’observation. Certaines irregularites dans le parcours
i 60 Tout d’abord, il n’avait pas voulu visiter le pays ou pour dix-huit mois au moins, il etait iso
72 (60) 21 Q Mettez les adjectifs a la bonne place comme dans l exemple (attention: des devient de d
282 Ces idees sont loin de constituer un siraple amalgame de deux religions. Eli es montrent plutót
0 inDesnFonction Turbo / Bouillon rapide La fonclion Turbo peut etre utilisee sur certaines zones de

więcej podobnych podstron