23. Crt
L'unità Crt implementa innumerevoli funzioni e procedure per la gestione dello schermo del pc, della tastiera, dei colori, delle finestre e dei suoni. Qui di seguito ho raccolto tutte le sue funzioni e procedure:
- clreol;
Questa procedura permette di pulire tutti i caratteri dalla posizione del cursore fino alla fine della linea senza muovere il cursore. Esempio:program Esempio_clreol; uses crt; begin writeln('Il Pascal è nato negli anni ''70'); writeln('Premi invio per continuare'); gotoxy(1,2); clreol; writeln('ad opera di Niklaus Wirth.'); readln; end.
- clrscr;
Questa procedura permette di pulire lo schermo e di posizionare il cursore in alto a sinistra in posizione (1,1); - delay(tempo);
Questa procedura fa sì che il sistema si fermi in pausa per un certo numero di millisecondi definito nelle parentesi. L'uso della procedura delay è legata spesso alla procedura sound; - delline;
Questa procedura elimina tutto il contenuto della linea in cui si trova il cursore; - gotoxy(x,y);
Questa procedura sposta il cursore al punto di coordinate x-y dello schermo; - highvideo;
Questa procedura imposta la luminosità dei caratteri della finestra ai massimi valori; - insline;
Questa procedura inserisce una linea vuota alla posizione del cursore; - keypressed;
Questa funzione restituisce true quando viene premuto un tasto sulla tastiera. Di solito è legata al ciclo repeat..until in questo modo:Questa istruzione si può utilizzare in alternativa all'ultimo readln del programma;repeat until keypressed;
- normvideo;
Questa procedura imposta la luminosità dei caratteri della finestra ai valori predefiniti; - nosound;
Questa procedura spegne lo speaker interno del pc; - readkey;
Questa funzione legge un carattere da tastiera; - sound(hz);
Questa procedura riproduce un suono tramite lo speaker interno del pc; Esempio:program Suoni; uses crt; var hz,durata:integer; begin clrscr; write('Inserisci la frequenza del suono da riprodurre = '); readln(hz); write('Inserisci la durata in secondi del suono da riprodurre = '); readln(durata); durata:=durata*1000; sound(hz); delay(durata); nosound; writeln('Riproduzione completata!!!'); readln; end.
Qui di seguito le frequenze in hz delle note musicali:
NOTA FREQUENZA (HZ) Do 262 Do#Reb 277 Re 294 Re#Mib 311 Mi 330 Fa 349 Fa#Solb 370 Sol 392 Sol#Lab 415 La 400 La#Sib 466 Si 494
- textbackground(codice);
Questa procedura seleziona il colore di sfondo della finestra. Il colore può essere espresso con valori da 0 a 7 o con il nome inglese del colore:
COLORE CODICE nero 0 blu 1 verde 2 violetto 3 rosso 4 magenta 5 marrone 6 grigio 7
- textcolor(codice);
Questa procedura seleziona il colore del testo della finestra. Il colore può essere espresso con valori da 0 a 15 o con il nome inglese del colore. Si può utilizzare anche la costante blink, per creare testo intermittente. Questo uso deve essere fatto così:textcolor(white+blink);
- wherex;
Questa funzione restituisce la posizione X del cursore nella finestra; - wherey;
Questa funzione restituisce la posizione Y del cursore nella finestra;