Bouton OK
GW-Basic, utilisé par PC-Basic
Programme avec Graphique et Texte
Utiliser l’instruction DRAW, sans disposer les graphiques à l’avance, revient à dessiner à l’aveugle.
DRAW propose plusieurs options :
Mouvement absolu dans huit directions à partir de la position actuelle du curseur,
Mouvement absolu vers une paire de coordonnées spécifique et
Mouvement relatif dans une direction horizontale et verticale à partir de la position actuelle du curseur.
Il existe encore plus de fonctionnalités DRAW, comme la mise à l'échelle et la rotation, sur lesquelles nous nous concentrerons dans une section ultérieur.
Regardons d'abord le mouvement absolu dans huit directions :
U10 trace une ligne dix unités vers le haut ;
D10 trace une ligne dix unités plus bas ;
L10 trace une ligne dix unités vers la gauche ;
R10 trace une ligne dix unités vers la droite ;
E10 trace une ligne dix unités vers le haut et vers la droite ;
H10 trace une ligne dix unités vers le haut et vers la gauche ;
F10 trace une ligne dix unités vers le bas et vers la droite ;
et G10 trace une ligne dix unités vers le bas et vers la gauche.
Ainsi, par exemple, si DRAW"U5 R10 F15 était codé, vous diriez à GW-BASIC de - à partir de la position actuelle du curseur (vous pouvez utiliser PSET pour définir cela) - de monter de cinq unités, de dix unités vers la droite et en diagonale, de quinze unités vers le bas, tout en laissant des traces de mouvements (instantanés).
Au lieu d'utiliser des paramètres directionnels, vous préférerez peut-être utiliser M à la place.
Par exemple, en tapant DRAW"M20,30 M50,90 GW-BASIC tracera des lignes depuis la position actuelle du curseur vers ces deux points (utilisez B au lieu de M pour accéder à cet emplacement sans ligne).
Si vous tapez DRAW"M-20, +30, un mouvement relatif en résultera.
N'hésitez pas à copier et à utiliser le graphique suivant pour tracer les images SCREEN 7.
Graphiques pour le programme OK.BAS, un bouton "Ok" clignotant, a utilisé le papier millimétré ci-dessus. Pour arrêter le bouton de clignoter et quitter le programme, appuyez simplement sur n'importe quelle touche.
Graphiquement, OK.BAS s'appuie uniquement sur le mouvement directionnel ainsi que sur les instructions PAINT et PSET pour réaliser sa magie visuelle.
Exécutez EFFECTS.BAS et vous verrez deux barres horizontales épaisses en bas-relief, dans le style classique de Windows 3.1, ainsi que plusieurs boutons contextuels (l'un transparent, l'autre opaque) et une sphère rouge brillante.
Plus tard, nous explorerons des alternatives au papier millimétré, mais, pour l'instant, envisagez de créer votre propre jeu de papier millimétré SCREEN 9 haute résolution ; il devra mesurer 640 pixels de large sur 350 pixels de haut.
OK.BAS
10 KEY OFF
20 SCREEN 7:COLOR
15,2:CLS
30 PSET(40,11),8:DRAW"R39 D20 R1 U20 D20 L40 U1 R40 D1 L40 U20
50 PAINT(68,21),7,8
60 PSET(45,16),8:DRAW"D10 R7 U10 L7
70
PSET(65,16),8:DRAW"D10 U5 E5 G5 F5
75 PSET(45,28),8:DRAW"R7
80
PAINT(60,21),14,8:PAINT(46,18),14,8:T=0
90 I$=INKEY$
100 IF I$<>"" THEN
GOTO 180
119 T=T+1:IF T=300 THEN GOTO 140
120 IF I$="" THEN GOTO 90
130 GOTO 90
140 PAINT(60,21),7,8
150 PAINT(46,18),7,8
160 FOR C=1 TO
4000:NEXT C:T=0
170 GOTO 30
180 SOUND 1000,1:PAINT(60,21),4,8
185
PAINT(46,18),4,8
190 END
EFFECTS.BAS
10 KEY OFF:SCREEN 7:COLOR
8,2:CLS
20 PSET(170,130):DRAW"R20 D20 L20 U20"
30 PAINT(189,140),7,8
40
PSET(180,130),15:DRAW"L20 020"
50 CIRCLE(126,96),10,4
60 PAINT(126,96),4
70 COLOR 15
80 PSET(123,90):DRAW"R1 L1 D1 L3 D1 R1 L1 D1 L1"
90
PSET(0,10),8:DRAW"R320"
100 PSET(0,20),8:DRAW"R320"
110 PAINT(0,15),7,8
120 PSET(0,10),15:DRAW"R320"
130 PSET(0,180),15:DRAW"R320 U1 L320 U1 R320 U1
L320"
140 PSET(0,190),8:DRAW"R320 D1 L320 D1 R320 D1 L320"
150
PSET(126,96):DRAW"R40 D10 L40 U10"
160 PSET(166,96),8:DRAW"D10 L40"