CATEGORII DOCUMENTE |
DOCUMENTE SIMILARE |
|
TERMENI importanti pentru acest document |
|
Functii pentru gestiunea textelor
Pentru afisarea caracterelor se pot folosi functiile:
int putch (int c); - afiseaza un singur caracter;
int cputs (const char *str); - afiseaza un sir de caractere in mod similar functiei puts;
int cprintf (const char *format); - afiseaza date sub controlul formatelor in mod similar functiei printf.
void clreol (void); - sterge sfarsitul liniei incepand cu pozitia cursorului;
void delline (void); - sterge toata linia pe care este pozitionat cursorul;
int gettext (int left, int top, int right, int bottom, void *destination); - copiaza textul cuprins in dreptunghiul definit de coordonatele (left, top) - stanga sus si (right, bottom) - dreapta jos la adresa de memorie indicata de pointerul destination;
int puttext( int left, int top, int right, int bottom, void *source ); - citeste textul cuprins in dreptunghiul definit de coordonatele (left, top) - stanga sus si (right, bottom) - dreapta jos de la adresa de memorie indicata de pointerul source;
int movetext( int left, int top, int right, int bottom, int destleft, int desttop ); - muta textul cuprins in dreptunghiul definit de coordonatele (left, top) - stanga sus si (right, bottom) - dreapta jos in dreptunghiul cu coordonatele coltului din stanga sus (destleft, desttop);
void insline (void); - insereaza o linie vida in fereastra activa;
int getch (void); - citeste un caracter fara ecou de la tastatura, adica dupa ce este citit caracterul nu mai este afisat pe ecran; functia returneaza codul ASCII al caracterului citit de la tastatura.
int getche (void); - citeste un caracter cu ecou de la tastatura, adica dupa ce este citit caracterul este afisat automat pe ecran; functia returneaza codul ASCII al caracterului citit de la tastatura.
int kbhit (void); - controleaza daca s-a tastat ceva la tastatura. Daca a fost apasata o tasta se returneaza o valoare diferita de zero, altfel se returneaza valoarea 0.
Exemplu: Urmatorul program deseneaza o fereastra si scrie un numar in aceasta.
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <alloc.h>
#include <dos.h>
#define MAX 100
#define SIMPLU 1
#define DUBLU 2
typedef structELEM;
ELEM *stiva[MAX];
int istiva;
void orizontal(int,int);
void vertical(int,int,int,int);
void fereastra(int st,int sus,int dr,int jos,int fond,int culoare,
int chenar,int n)
//Afiseaza o fereastra limitata de un chenar
if ((stiva[istiva]=(ELEM *)farmalloc(sizeof(ELEM)))==0)
stiva[istiva]->x=st;
stiva[istiva]->y=sus;
stiva[istiva]->u=dr;
stiva[istiva]->v=jos;
if((gettext(st,sus,dr,jos,stiva[istiva]->zonfer))==0)
istiva++;
//Activeaza fereastra si o afiseaza pe ecran
window(st,sus,dr,jos);
textattr(16*fond+culoare);
clrscr();
//Trasare chenar
if (chenar)
orizontal(dr-st-2,chenar);
switch(chenar)
vertical(jos-sus,1,2,chenar);
gotoxy(1,jos-sus+1);
switch(chenar)
orizontal(dr-st-2,chenar);
vertical(jos-sus-1,dr-st,2,chenar);
gotoxy(dr-st,jos-sus+1);
switch(chenar)
normvideo();
textattr(16*fond+culoare); }
gotoxy(3,3);
cprintf('%d',n);
//Ascunde cursorul
_AH=1;
_CH=0x20;
geninterrupt(0x10); }
void orizontal(int a,int chenar)
void vertical(int a,int col,int lin,int chenar)
void main(void)
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 783
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved