Desenarea formelor cu finisaje

C # pentru profesioniști

Cine ar trebui să citească această carte?

Temele principale ale cărții

Platforma .NET oferă un nou mediu în care se poate dezvolta aproape orice aplicație bazată pe Windows, iar C # este un limbaj de programare nou creat special pentru a lucra cu .NET.







Această carte prezintă toate conceptele de bază ale limbajului C # și ale platformei .NET. descrie pe deplin C # sintaxa, exemple de diferite tipuri de aplicații în construcții folosind C # - crearea de aplicații și servicii Windows, aplicații și servicii WWW atunci când prin ASP.NET, precum și elemente de Windows și de management WWW consideră bibliotecile clasa comune .NET, în special, accesul la datele prin intermediul ADO.NET și accesul la serviciul Active Directory utilizând clasele DirectoryServices.

Această carte este destinat pentru dezvoltatorii cu experiență ar putea avea experienta de programare VB, C ++ sau Java, dar niciodată înainte de văzut în lucrarea sa limbajul C # și platforma .NET. Programatorii care folosesc tehnologia modernă, cartea va da o idee completă despre cum să scrieți programe în C # pentru platforma .NET.

• Toate caracteristicile C #

• programare orientată C # și obiect

• Aplicații și servicii Windows

• Crearea de pagini web și servicii web folosind ASP NET

• Accesarea datelor utilizând ADO NET

• Crearea de aplicații distribuite folosind NET Remoting

• Integrarea cu COM, COM + și Active Directory

Desenează forme cu OnPaint

Dacă explicația de mai sus te-a făcut să crezi că desenarea interfeței tale personale ar fi o sarcină foarte dificilă, atunci nu-ți face griji. Nu e așa. Au fost date diverse detalii ale procesului, astfel încât să înțelegeți ce probleme ați întâmpina. Dar obținerea aplicației pentru a se redresa atunci când este necesar este într-adevăr o sarcină ușoară.

Când apare o necesitate, Windows notifică aplicația că trebuie să efectueze o anumită pictura a imaginii, inițiând evenimentul Paint. Interesant, clasa Form a implementat deja un handler pentru acest eveniment, astfel încât să nu aveți nevoie să creați propria dvs. Puteți utiliza această arhitectură, pe baza faptului că manipulatorul Form1 pentru evenimentul Paint va apela metoda virtuală OnPaint () în timpul procesării. trecând printr-un singur parametru PaintEventArgs. Aceasta înseamnă că pentru a efectua desenul, trebuie doar să înlocuiți metoda OnPaint (). Vom crea un nou exemplu numit DrawShapes. Ca și înainte, definiți DrawShapes ca o aplicație Windows generată cu Visual Studio .NET și adăugați următorul cod al clasei Form1:







protejat override void OnPaint (PaintEventArgs e) Grafica dc = e.Grafica;
Pen BluePen = stilou nou (Culoare albastru, 3);
dc.DrawRectangle (BluePen, 0, 0, 50, 50);
Pen RedPen = Pen nou (culoarea roșie, 2);
dc.DrawEllipse (RedPen, 0, 50, 80, 60);
base.OnPaint (e);
>

Rețineți că metoda OnPaint () este declarată protejată. OnPaint () este folosit în mod normal în interiorul unei clase, astfel încât nu este nevoie de niciun alt cod în afara clasei pentru a ști despre existența sa.

PaintEventArgs este o clasă derivată din EventArgs. utilizat de obicei pentru a transmite informații despre evenimente. PaintEventArgs are două proprietăți suplimentare, dintre care cel mai important este instanța Graphics. deja configurate și optimizate pentru a desena partea necesară a ferestrei. Aceasta înseamnă că nu trebuie să apelăm CreateGraphics (). Pentru a obține contextul dispozitivului în metoda OnPaint (). - există deja. Vom lua în considerare în curând o altă proprietate suplimentară, care conține informații mai detaliate despre care zonă a ferestrei trebuie într-adevăr să fie reproiectată.

În acest exemplu de realizare, metoda OnPaint (), vom obține mai întâi o referință la un obiect grafic din PaintEventArgs. apoi trageți cifrele în același mod ca înainte. În final, se numește metoda OnPaint () a clasei de bază. Acest pas este important. Am redefinit OnPaint () pentru a efectua propria noastră pictură, dar este posibil ca Windows ar trebui să efectueze propriile lucrări în procesul de desen, iar acest lucru va fi legat de metoda OnPaint () într-una din clasa de bază .NET.

Pentru acest exemplu, eliminarea apelului la base.OnPaint () nu are niciun efect asupra operațiunii, dar niciodată nu încercați să ștergeți apelul. Acest lucru poate duce la oprirea incorectă a Windows și la rezultate imprevizibile.

OnPaint () va fi, de asemenea numit în cazul în care cererea este prima rulare și fereastra aplicației este afișată pentru prima dată, astfel încât nu este nevoie să duplicat codul de desen în constructor, dar încă mai trebuie să specificați aici culoarea de fundal și toate celelalte proprietăți ale formei. Aceasta este de obicei setată fie prin adăugarea explicită a comenzii, fie prin setarea culorii în fereastra de proprietăți Visual Studio .NET:

void privat InitializeComponent () this.components = new System.ComponentModel.Container ();
this.Size = nou System.Drawing.Size (300, 300);
this.Text = "Desenează forme";
this.BackColor = Color.White;
>

Rularea acestui cod oferă mai întâi aceleași rezultate ca în exemplul precedent, cu excepția faptului că aplicația se comportă corect atunci când fereastra este minimizată sau partea ei este ascunsă.







Articole similare

Trimiteți-le prietenilor: