Sunteți pe pagina 1din 4

1

Laborator 2

Windows Forms Application

n mediul .NET elemente GUI (Graphical user interface) cum ar fi meniuri, butoane, liste,
arbori, i desigur, fereastra nsi, sunt create n cadrul Windows Forms Applications.
Windows Forms este un set de clase orientate pe obiecte care ofer un mediu de programare
modern pentru dezvoltarea unor aplicaii Windows. Acestea pot fi folosite pentru a afia date,
pentru a lucra cu datele introduse i pentru a spori securitatea.

Microsoft Windows este un sistem de securitate care ofer obiecte grafice utilizate pentru a
interaciona cu calculatorul. Aceste obiecte, denumite ferestre, sunt create de ctre o persoan sau o
companie i apoi instalate pe un calculator pentru a fi utilizate. Pentru a crea astfel de obiecte se
pot folosi limbaje precum C++, Java, Object Pascal, Assembly, C#, etc, sau medii de programare
cum ar fi Visual Studio 2012. Un obiect utilizat pe un calculator nu este deosebit de util, de
aceea se lucreaz cu mai multe obiecte grupate ntr-o aplicaie sau un program. Limbajul C#
furnizeaz aproape tot ce avem nevoie pentru a creea o aplicaie. O aplicaie Windows apare ca
un obiect dreptunghiular care ocup o parte din ecran. Acest obiect este coordonat de ctre
sistemul de operare: Microsoft Windows. Pe baza funcionalitilor Microsoft Windows,
pentru ca o aplicaie s fie util, aceasta trebuie s fie deschis. O aplicaie trebuie s aib un
punct de acces, de plecare. n C# punctul de plecare este o funcie care se numelte Main. Metoda
Main() din C# poate fi definit ca o procedur void sau poate s returneze o valoarea ntreag.

Un program poate consta n comenzi tastate, nu este necesar s aib interfa grafic cu
utilizatorul, dar de cele mai multe ori, GUI este important platforma Windows Forms
sprijin aplicaiile native de calitate nalt pe baz de ferestre Windows. Toate obiectele
plasate n cadrul unei ferestre sunt bazate pe obiectul de tip Control. Toate formularele sunt
bazate pe tipul Form. Acest lucru permite utilizarea obiectelor ntr-un mod unitar, consistent.

Windows Forms este bazat bazat pe evenimente. Se pot activa comportamente ale
controalelor atunci cnd o aciune are loc, cum ar fi un click de mouse. n Windows Form
exist multe metode, unele care nu necesit explicaii. Metoda InitializeComponent este
generat automat de ctre Visual Studio. Windows Forms este o tehnic de a ceeea aplicaii
bazate pe CLR (common language runtime) i ofer o serie de obiecte denumite controale.
Acestea sunt create pe platforma .NET pe baza unor clase. Crearea unei aplicaii presupune
utilizarea controalelor i modificarea acestora astfel nct s rspund nevoilor noastre.
Obiectele utilizate n cadrul platformei Windows Forms sunt stocate n librrii denumite
assemblies. Ca orice librrie aceste assemblies au extensia .dll (dynamic link library). Pentru a le
putea folosi, trebuie s tim numele bibliotecii din care face parte. Apoi trebuie adugat o
referin ctre bibliotec n cadrul aplicaiei. Pentru a aduga un assembly, la compilarea
programuluise tasteaz /reference: sau /r: urmat de numele bibliotecii (assembly).

Un formular este obiectul fundamental utilizat n cadrul unei aplicaii.Un formular este bazat pe
clasa Form care este definit n cadrul namespace-ului System.Windows.Forms creat n cadrul
bibliotecii System.Windows.Forms.dll. Fiecare aplicaie GUI va avea ca punct de plecare un
formular. Exist mai multe tehnici de a introduce un formular n cadrul unei aplicaii: aceasta
poate fi programat i creat manual, poate fi motenit pe baza clasei Form, sau poate fi
creat pe baza unui formular care exist deja. Dup ce formularul a fost creat, acesta poate fi
afiat pe ecran cu ajutorul clasei Application, poate porni aplicaia, procesa mesajele sau alte
operaii li poate opti aplicaia. Clasa Application furnizeaz metoda Run() care poate fi folosit
pentru a lansa n execuie programul. Una dintre versiunile acestei metode are ca argument un
formular. Acesta trebuie s fie principal, primul formular al aplicaiei, primul care va fi afiat
atunci cnd aplicaia este pornit.

2

2. Controlul de tip Label
Un control de tip Label este utilizat ca mediu de afiare a unui text pe un formular. Etichtele nu
particip la introducerea unor valori sau la capturarea evenimentelor legate de tastatur sau de
mouse. Label este cel mai utilizat control C#. El se utilizeaz pentru a afia un text ntr-o anumit
locaie pe formular, pentru a afia informaii utile. Clasa Label este definit n namespace-ul
System.Windows.Forms. Dac se modrete modificarea textului afiat prin cod, se va adresa
proprietii Text a controlului de tip Label:
label1.Text = "Aceasta este prima mea eticheta";

Pe lng afiarea unui text, acesta poate afia o imaginecu ajutorul proprietii Image, o
combinaie ntre proprietile ImageIndex i ImageList:
label1.Image = Image.FromFile("C:\\testimage.jpg");

Controlului de tip Label i se modific proprietatea Name (utilizndu-se prefixul lbl) i
proprietatea Text (care controleaz textul acre apare pe formular).

3. Controlul de tip TextBox
Un control de tip TextBox accept introducerea unei valori prin intermediul formularului,
prelund sau setnd valoarea textului. Un TextBox are faciliti suplimentare cum ar fi editare pe
mai multe linii (Multiline), bare de derulare (ScrollBars) sau mascarea caracterelor pentru o
parol.Un TextBox permite tastarea unor litere i introducerea unei valori. Un TextBox va permite
citirea de la tastatur i afiarea unui text dar nu va executa nimic cu textul introdus. Acesta va
trebui accesat pe baza unor reguli predefinite de logic.

Proprietatea Text furniteaz valoarea din cadrul controlului. Aceasta poate fi accesat oricnd. Pentru
a monitoriza modificarea survenit acestui text se poate utiliza evenimentul TextChanged.
Aceast metod poate fi folosit pentru a modifica o alt parte a programului atunci cnd
utilizatorul introduce date n TextBox. Evenimentul TextChanged este activat atunci cnd textul
se modific, nu i dac textil rmne la aceeai valoare.

Pot fi setate proprieti de tip AcceptsTab i AcceptsReturn pentru a permite manipularea
textului n cazul mai multor linii (Multiline). Cantitatea de text care este introdus n cadrulu unui
TextBox poate fi limitat cu ajutorulu proprietii MaxLength la un numr specific de caractere.
Proprietatea CharacterCasing poate fi folosit pentru a utiliza fie doar litere mici,
fie doar majuscule sau o combinaie de litere mici i majuscule.
Un control de tip TextBox controls poate accepta parole sau alte informaii importante. Se
poate folosi proprietatea PasswordChar pentru a masca caracterele introduse pe o singur
linie, de exemplu se poate plasa caracterul (*) pentru a ascunde irul introdus ca parol.

Pentru a interzice editarea textului din cadrul unui TextBox se poate folosi proprietatea
ReadOnly asociat controlului setat pe true.
Metoda Clear terge coninutul unui TextBox.
Exemplu: textBox1.Clear();
Unui control de tip TextBox i se modific proprietatea Name (prefixul txt).
Un tip special de TextBox este MaskedTextBox tem!
1


4. Controlul de tip Button
Butoanele de comand furnizeaz o modalitate de a efectua o aciune sau a seta o comand. Un
buton accept clickuri. n Windows Forms se folosesc controale de tip Button care accept
clickuri pentru a efectua aciuni. Acest control furnizeaz un mod de a accepta un input i

1
http://www.c-sharpcorner.com/uploadfile/mahesh/maskedtextbox-in-C-Sharp/
3

invocarea unei proceduri bazat pe acel input. Butonul se folosete atunci cnd utilizatorul
efectueaz click pe buton sau apas o tast pentru a activa butonul.
Programele de tip Windows Forms sunt bazate pe evenimente. Ferestrele sunt inactive pn cnd
utilizatorul acioneaz asupra unui control. Atunci cnd se adaug evenimentul click, acesta va
avea loc atunci cnd utilizatorul apas pe buton.

Clasa Button motenelte clasa System.Windows.Controls.Primitives.ButtonBase. Pentru a aplica
acelai stil mai multor butoane, se poate modifica proprietatea Style, sau
ControlTemplate, pentru a avea un ablon care va fi aplicat tuturor butoanelor.

Alte evenimente care pot fi asociate acestui control: Hover (atunci cnd se mic mouse-ul
deasupra butonului), Release(dup se ce execut apsarea butonului i apoi eliberarea
acestuia) i Press (atunci cnd pointerul mouse-ului este deasupra butonului se apas butonul
mouse-ului).

Unui formular i se pot seta proprietile AcceptButton sau CancelButton pentru a permite
utilizatorului s apese ENTER sau ESC chiar dac butonul nu este n focus. Astfel formularul
adopt comportamentul unei ferestre de dialog. Totui, dac controlul pe care este setat
focusul accept i proceseaz tasta ENTER, apsarea butonului nu va fi procesat. De
exemplu, dac exist un TextBox care accept linii multiple care este n focus, acesta va
procesa apsarea tastei Enter n locul apsrii butonului.

5. Metoda Messagebox.Show
Ferestrele de dialog ntrerup utilizatorul. Acestea l oblig s rspund nainte s fac o
aciune. MessageBox.Show este foarte util i necesar ca un avertisment al unor erori sau a
afirii unor lucruri importante.
MessageBox.Show("Hello!");

MessageBox.Show("Hello!", "Mesaj important");

DialogResult result1 = MessageBox.Show("Va place C#?","Intrebare importanta",
MessageBoxButtons.YesNo);

4

DialogResult result2 = MessageBox.Show("Va place C#?","Intrebare",
MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question,
MessageBoxDefaultButton.Button2);

Pentru a obine rspunsurile:
if (result1 == DialogResult.Yes && result2 == DialogResult.No)
{

MessageBox.Show("Ati raspuns yes, apoi no.");
}
MessageBox.Show("C# e cel mai tare!", "Critical Warning",MessageBoxButtons.OKCancel,
MessageBoxIcon.Warning, MessageBoxDefaultButton.Button1,
MessageBoxOptions.RightAlign,true);

MessageBox.Show("C# e cel mai tare!","Anunt important", MessageBoxButtons.OK,
MessageBoxIcon.Exclamation,
MessageBoxDefaultButton.Button1);

6. Setarea focusului
txtNume.Focus();

7. Curarea valorii unui control de tip TextBox
txtDenp.Clear();
sau
txtDenp.Text = "";

8. Ascunderea/afiarea unui control
lblStocf.Visible = false; //- ascunderea
lblStocf.Visible = true; //- afiarea

S-ar putea să vă placă și