Manualul de auto-instruire ilustrat pascal on-line

Tutorial online Pascal

Ieșire text pe ecran

Biblioteca Turbo Vision este capabilă să îndeplinească cele mai înalte cerințe și vă recomandăm să o accesați atunci când programați imagini text complexe (meniuri, ferestre etc.). Cu toate acestea, este foarte posibil ca unii cititori să vrea să utilizeze instrumentele mult mai simple, dar destul de eficiente, ale modulului CRT descrise în această secțiune.







Așa cum este utilizat în calculator informații afișaj vizual - -consists afișarea a două părți principale: monitorul care cuprinde un ecran (CRT sau panou cu cristale lichide) cu componentele necesare (dispozitive, scaner de imagine), și o unitate de control, care este adesea menționată ca un adaptor de afișare, sau pur și simplu adaptor . În mod normal, ambele dispozitive sunt compatibile unele cu altele, dar în unele cazuri, acest lucru poate să nu fie potrivite (de exemplu, un monitor color poate lucra cu un adaptor monocrom și vice-versa). Presupunem ambele unități convenite, prin urmare, vorbind despre o varietate de display-uri, voi vorbi doar despre diferitele adaptoare, pentru că în ele centrate afișează principalele diferențe față de cealaltă.

Din punct de vedere istoric, primul adaptor (1981) folosit pe IBM PC a fost așa-numitul adaptor monocrom (MDA). Capacitățile sale sunt foarte modeste: permite afișarea numai a mesajelor text într-unul din cele două formate - 25 de linii de 40 sau 80 de caractere pe linie. Simbolurile afișate în imaginea live (caractere luminoase pe un fundal întunecat), iar lățimea lor rămâne aceeași în ambele moduri, astfel încât derivarea unui mod de 40x25 este folosit, doar jumătatea stângă a ecranului. În MDA, s-au folosit două caractere de caractere - comune și cu un subliniere.

În 1982, compania a lansat adaptorul HGC Hercules (din limba engleză Hercules Graphics Card -. Hercules placă grafică), care este imitat pe deplin MDA în modul text, dar spre deosebire de el ar putea juca în continuare și grafică cu o rezoluție de 720x350 puncte (pixeli).

În același timp, IBM a lansat un adaptor grafic color CGA (Color Graphics Adapter) și pentru prima dată a apărut o culoare pe ecranul PC-ului. CGA permite afișarea atât a mesajelor text cât și a imaginilor grafice (cu o rezoluție de 320x200 sau 640x200 pixeli). În modul text, au fost tipărite 40x25 sau 80x25 caractere în ambele imagini monocrome și color. Când se utilizează modul monocrom, simbolurile, spre deosebire de MDA, nu au putut fi subliniate, dar ar putea fi

ieșire într-o imagine negativă (caractere negre pe fundal deschis). La ieșirea în modul color, s-au folosit 16 culori pentru simboluri și 8 pentru background-ul utilizat.

Capabilitățile de text ale CGA au devenit standard de facto și sunt susținute în toate dezvoltările ulterioare ale adaptoarelor IBM - EGA, MCGA, VGA și SVGA. Capacitățile modulului CRT sunt luate în considerare pentru adaptoarele de acest tip.

Se utilizează pentru a specifica unul dintre modurile posibile de text ale adaptorului. Titlul procedurii:

Procedură Mod Text (Mod: Word);

Aici Modul este codul modului de text. Următoarele constante definite în modulul CRT pot fi utilizate ca valoare a acestei expresii:







Font8x8 = 256

sau 80x50 cu adaptoare EGA sau VGA>

Codul modului setat prin apelarea procedurii TextMode este stocat în variabila globală LastMode a modulului CRT și poate fi utilizat pentru a restabili starea inițială a ecranului.

Următorul program ilustrează utilizarea acestei proceduri în moduri diferite. Rețineți că atunci când apelați TextMode, toate setările predefinite ale culorilor și ferestrelor sunt resetate, ecranul este șters și cursorul este mutat în colțul din stânga sus.

Procedură Imprimare (S: String);

(Afișează mesajul S și așteaptă inițiativa utilizatorului>

WriteLn ('Apăsați Enter');

Fiți atenți la ultima declarație WriteLn: dacă o eliminați, modul de flicker al simbolului va fi păstrat după terminarea programului, chiar dacă este precedat de un operator

Faptul este că toate definițiile de culoare sunt introduse preliminar în variabila TextAttr specială a modulului CRT și se utilizează pentru a configura adaptorul numai când accesează procedurile Write / WriteLn.

Șterge ecranul sau fereastra (consultați procedura ferestrei de mai jos). După accesarea acestuia, ecranul (fereastra) este umplut cu culoarea de fundal și cursorul este setat în colțul din stânga sus. De exemplu:

WriteLn ('Apăsați orice tastă.');

Definește o casetă de text - zona ecranului, care în viitor va fi considerată ca procedură de ieșire ca întregul ecran. Imediat după procedura de apel cursorul este plasat în colțul din stânga sus al ferestrei și fereastra în sine este ștearsă (umplut cu culoarea de fundal). Ca indicatorul de ieșire, ca de obicei, și transferate la dreapta atunci când ajunge la marginea din dreapta a ferestrei se mută la o nouă linie, iar dacă de această dată a fost în ultimul rând, conținutul ferestrei este mutat în sus o singură linie, și anume derulează fereastra. Titlul procedurii:

Fereastra de proceduri (XI, Y1, X2, Y2: Byte);

Aici X1. Y2 - coordonatele coloanelor din partea stângă sus (XI, Y1) și colțurile drepte inferioare (X2, Y2) ale ferestrei. Acestea sunt setate pe coordonatele ecranului, colțul din stânga sus al ecranului având coordonate (1,1), coordonatele orizontale cresc de la stânga la dreapta și coordonatele verticale de sus în jos.

Următorul exemplu ilustrează ieșirea unui mesaj suficient de lung în două ferestre diferite.

pentru k: = 1 până la 100 nu

Scrieți ('Apăsați Enter');

pentru k: = 1 până la 100 nu

Scrieți ('Apăsați Enter');

Recurs la procedura de fereastra este ignorată dacă oricare dintre coordonatele este dincolo de marginea ecranului este rupt sau dacă una dintre condițiile: X2> X1 și Y2> Y1. Fiecare apel nou în fereastră înlocuiește definiția ferestrei anterioare. Limitele acestei ferestre sunt stocate în două modul globale variabile CRT: variabila de tip WindMin Word stochează X1 și Y1 (XI - în octetul scăzut), iar variabila de același tip WindMax - X2 și Y2 (X2 - în octetul scăzut). Dacă doriți, le puteți modifica în modul dorit fără a accesa fereastra. De exemplu, în loc de operator

ai putea utiliza doi operatori

WindMin: = 39+ (1 șl 8);

WindMax: = 69+ (16 șl 8);

(spre deosebire de accesarea ferestrei, coordonatele stocate în variabilele WindMin și WindMax corespund originii contorului de 0,0).

Mută ​​cursorul în locația dorită pe ecran sau în fereastra curentă. Titlul procedurii:

Procedura GotoXY (X, Y: Byte);

Aici, X, Y sunt coordonatele cursorului noi. Coordonatele sunt stabilite în raport cu limitele ecranului (fereastra), adică operatorul

înseamnă o indicație pentru a deplasa cursorul în colțul din stânga sus al ecranului (sau fereastră, dacă în acest moment este definită o fereastră pe ecran). Accesul la procedură este ignorat dacă noile coordonate se află în afara limitelor ecranului (fereastră).

Funcțiile whereX și WhereY.

Cu ajutorul acestor funcții de tip Byte, puteți determina coordonatele curente ale cursorului: WhereX returnează orizontal și WhereY - coordonatele verticale.

În următorul program, mai întâi este creată o fereastră în centrul ecranului, care este înconjurată de un cadru, apoi în fereastră este afișată o masă cu două coloane.

Șterge o parte a liniei de la poziția curentă a cursorului la marginea din dreapta a ferestrei (ecran). Poziția cursorului nu se schimbă.

Distruge întreaga linie cu cursorul în fereastra curentă (sau pe ecran dacă fereastra nu este creată). În acest caz, toate rândurile de sub delega (dacă există) sunt deplasate într-o singură linie.

Introduce un șir: o linie cu cursorul și toate liniile de dedesubt sunt deplasate pe o linie; Linia care părăsește marginea inferioară a ferestrei (ecran) este pierdută iremediabil; Poziția curentă a cursorului nu se modifică.

Proceduri LowVideo, NormVideo și HighVideo.

Cu aceste proceduri, fără parametri, puteți seta luminozitatea corespunzător mai mică, normală și mai ridicată a simbolurilor. De exemplu:

Observ că în practică nu există nici o diferență între luminozitatea redusă și cea normală a imaginii.

Procedura AssignCRT (F: Text);

literatură







Articole similare

Trimiteți-le prietenilor: