Sunteți pe pagina 1din 22

Mediul de programare .

NET (NET Framework):

Compilatorul VB este programul translator al sistemului de programare VB Speci ica!iile comune de lim"a# (C$S % Common $anguage Speci ications) Ser&iciile 'EB ( inter a!) *TM$ (H+perTe,t Markup Language). -nter a!a cu &i.uala utili.atorul (/rap0ical 1ser -nter ace 2 /1-) 3ecranul4 (designul) pentru ormularele5 ormatele de programare si pentru a i6area de imagini.

7ate 6i 8M$ constituie modulul prin care se reali.ea.) sc0im"ul de date pe -nternet. 8M$ (e8tensi"le Markup $anguage) se utili.ea.) pentru a descrie 6i pentru a repre.enta datele. Bi"lioteca claselor de "a.) (BC$ % Base Class $i"rar+) con!ine clasele de "a.) ale programelor.NET. VB.Net este un lim"a# orientat pe o"iecte. Toate o"iectele ac parte dintr(o clas) denumit) S9STEM. Bi"lioteca rutinelor comune (Common $i"rar+ :untime 2 C$:) inter ata lim"a#elor cu S; ('indows).

Modele (conceptuale) de programare . Modelul orientat procedural %< algoritmi speci ici de re.ol&are a pro"lemelor. Modelul orientat pe o"iecte %< particulari.area (procedurala) a unor o"iecte programa"ile ;"iecte in VB.Net: OBIECTUL Formular Bar) derulant) ori.ontal) Bar) derulant) &ertical) Buton de comand) Buton de op!iune Caset) cu list) Caseta cu list) com"inat) Caseta de imagine Caset) te,t etc. PREFIX Frm ;s" Vs" Cmd ;pt $st C"o -mg T,t

Obiectul ca unitate de prelucrare (programa"ila) %< caracter dinamic %< creare= utili.are= distrugere. ;"iectul se caracteri.ea.) prin identiate= metode de comportament 6i stare. Clasa % categorie de o"iecte cu caracteristici comune (propriet)!i 6i metode). Clasa poate i accesat) prin inter a!a -nter a!a clasei este caracteri.at) prin nume= tipurile atri"utelor 6i numele 6i descrierea metodelor. Proprietile unui o"iect repre.int) atri"utele acestuia= cum ar i dimensiunile (la!ime= >nal!ime)= po.i!ia pe ormular= culoarea= etc. Text Caption Multiline Meto e ?rin intermediul des )6uratorului de o"iecte (;B@ECT B:;'SE:)= sistemul VB e&iden!ia.) metodele posi"ile pentru un anumit o"iect. Count !"" Re#o$e

E$eni#ente ;ricare o"iect programa"il poate i accesat printr(un e&eniment. ?e de alt) parte= asemenea o"iecte pot declan6a= la rAndul lor= di&erse ac!iuni programate. E%E&IME&T $oad 1nload Bcti&ate 7eacti&ate Click 7"lClick 7rag7rop 7rag;&er MouseMo&e Mouse7own Mouse1p Ce+?ress Ce+7own Ce+1p /otFocus $ostFocus C0ange !ctiune asociata i#plicit B i6ea.) con!inutul unui ormular pe ecran 7ega#ea.) ecranul de un ormular Bcti&ea.) un ormular (acesta de&ine ereastr) acti&)) 7e.acti&ea.) un ormular (acesta de&ine inacti&) Se ac!ionea.) o singur) dat) pe "utonul mouse(ului= declan6And procedura programat) pentru controlul respecti& Se ac!ionea.) rapid de dou) ori pe "utonul mouse(ului= declan6And procedura programat) pentru controlul respecti& Se apas) continuu "utonul mouse(ului asupra unui control= se mi6c) mouse(ul 6i apoi se eli"erea.) "utonul Se apas) continuu "utonul mouse(ului asupra unui control 6i se deplasea.) mouse(ul Se mi6c) mouse(ul tra&ersAnd peste un control Se ac!ionea.) un "uton al mouse(ului asupra unui control Se eli"erea.) un "uton al mouse(ului de peste un control Bc!ionarea unei taste ci rice sau letrice 6i eli"erarea ei= sau ac!ionarea concomitent) a unei asemenea taste >mpreun) cu tasta ENTE: sau CT:$ Se ac!ionea.) (lung) o tast) asupra unui control Se eli"erea.) o tast) asupra unui control E&iden!ia.) un o"iect atunci cAnd se e,ecut) clic pe supra a!a lui 1n control este de.a ectat= ie prin ac!iunea operatorului (clic pe alt control)= ie atunci cAnd se utili.ea.) >n program metoda SETF;C1S Este e&enimentul implicit pentru casetele de te,t. Se re er) la sc0im")rile pe care utili.atorul le poate aduce &alorilor a i6ate. MutAnd pointerul de >nregistrare= acest e&eniment a ectea.) proprietatea &alorii din caseta de te,t. ?ermite 3tragerea4 cursorului de derulare >n di&erse erestre care con!in o imagine mai mare decAt dimensiunile proiectate ale erestrei c)reia i(au ost ata6ate "are de derulare

Scroll

Me iul interacti$ e e'$oltare Contine toate instructiunile necesare construirii aplicatiilor VB. Bara e #eniuri ( Cuprinde meniurile standard 'indows (File= Edit= D) precum si meniuri cu comen.i speci ice mediului de programare (?ro#ect= 7e"ug= D). Bara cu instru#ente )ToolBar* ( ?ermite accesul la comen.ile cele mai des olosite (New ?ro#ect= ;pen File= Sa&e Form= Cut= Cop+= ?aste= ..). Fereastra For# "esi+n )For#,-$b ."esi+n/* ( Este un ormular pe care programatorul proiectea.a controale. Un proiect poate avea unul sau mai multe formulare. Fereastra 0olution Explorer ( Cuprinde detaliile administrarii proiectului ( ormulare= module= isiere). Fereastra cu proprietati )Properties* ( B isea.a &alorile proprietatilor pentru ormularul sau controlul curent. Caseta cu instru#ente )ToolBox* ( Contine pictograme olosite in proiectarea aplicatiilor pentru a desena controale pe ormular= in scopul construirii inter etei cu utili.atorul. Fereastra pentru e itarea co ului )pro+ra#ul* Meniuri contextuale ( Contine comenile rapide pentru actiuni utili.ate rec&ent. Meniul conte,tual se o"tine e,ecutand clic dreapta pe o"iectul respecti&.

Etapele e reali'are a unui proiect ,- crearea inter1etei pro+ra#ului cu utili'atorul Visual Basic .NET creea.a inter ata cu utili.atorul prin urni.area dintr(o caseta cu instrumente a unui set de controale care se po.itionea.a pe ormular. ?rincipalele controale: etic0eta ($a"el) "utonul de comanda (Button) "uton de optiuni (:adioButton) caseta de te,t (Te,tBo,) caseta de &alidare (C0eckBo,) caseta lista ($istBo,) caseta com"inata (Com"oBo,)

container de o"iecte (/roupBo,) "ara de derulare ori.ontala (*ScrollBar) "ara de derulare &erticala (VScrollBar)

E. Initiali'area controalelor ( posi"ilitati: a. initiali.area controalelor= in a.a de proiectare= in caseta cu proprietati a iecarui control 2 se ace manual= prin clic pe o"iectul respecti& si modi icarea in lista de proprietati a &alorilor dorite= ast el: Exemplu: se construieste o aplicatie pentru calculul valorii; avem un formular, cu trei casete text simple, trei etichete (label-uri) si un buton de comanda.. OBIECT PROPRIET!TE %!LO!RE Label, Text cantitate Label2 Text pret Label3 Text $aloare TextBox, Text cantitate TextBox2 Text pret TextBox3 Text $aloare Text!li+n Ri+4t Button, Text start ". intr(o procedura $;B7 a ormularului 2 se da du"lu click pe ormular si= in ereastra de cod= se scrie urmatoarea sec&enta de program: Pri$ate 0ub For#,5Loa )---* Han les M6Base-Loa Label,-Text78cantitate8 Label2-Text78pret8 Label3-Text78$aloare8 TextBox,-Text78 8 TextBox2-Text78 8 TextBox3-Text78 8 TextBox3-Text!li+n7Hori'ontal!li+n#ent-Ri+4t Button,-Text780tart8 En 0ub ( deci= la declansarea e&enimentului $;B7 a ormularului se derulea.a aceasta 3initiali.are4 a controalelor. c. intr(o procedura C$-CC a unui "uton de comanda 2 se inserea.a in ormular un "uton de comanda= se da du"lu clic pe acesta si se scrie in ereastra de cod urmatoarea sec&enta de program: Pri$ate 0ub Button,5Clic9)---* Han les Button,-Clic9 Label,-Text78cantitate8 Label2-Text78pret8 Label3-Text78$aloare8 TextBox,-Text78 8 TextBox2-Text78 8 TextBox3-Text78 8 TextBox3-Text!li+n7Hori'ontal!li+n#ent-Ri+4t Button,-Text780tart8 En 0ub ( deci= la declansarea e&enimentului C$-CC a unui "uton de comanda se derulea.a aceasta 3initiali.are4 a controalelor. 3- executia pro+ra#ului Se e,ecuta clic pe "utonul 0T!RT din "ara cu pictograme sau se alege optiunea 0T!RT din meniul "EBU:. $a clic pe un "uton de comanda= VB.NET e,ecuta procedura Button,5Clic9 si comen.ile procedurii (se declansea.a e&enimentul clic pentru a interactiona cu programul). ;- crearea pro+ra#ului executabil ?entru crearea programului e,ecuta"il se e,ecuta clic pe sageata din dreapta cu&antului "ebu+ si se selectea.a Release. -n meniul Buil apare o optiune Build-nume proiect. Se e,ecuta clic pe aceasta optiune si VB.Net inlocuieste &ersiunea de depanare cu una e,ecuta"ila.

?rogramarea aplicatiilor de tip C;NS;$E %< ST:1CT1:B M;71$B:B prede inita

Construirea programelor cu &alori constante prin 1T-$-FB:EB 1N;: F1NCT-- S-STEM Functii u.uale: Console-<riteLine) * a1isare #esa=e pe ter#inal Sinta,a generala: Console.'rite$ine(3mesa#4 GH &aria"ilaI) Console-Rea Line) * mentine ecranul in asteptarea unui e&eniment e,tern Module Module !ub Main( ) 7im nume Bs String % 3-onescu4 7im pren Bs String % 3-on4 Console.'rite$ine(3Numele meu este 3 pren H 3 3 H nume) Console.:ead$ine( ) End !ub End Module ;BS.: Concatenarea &alorilor care compun linia editat) a ost reali.at) prin operatorul 3H4 Blte orme: Console-<rite) * a isare pe acceeasi linie Console-Rea ) * lectura partiala a liniei (pana la primul spatiu)

"ransmiterea parametrilor intre module si unctii 3parametri.are oar")4 1unctie)* E,: 0ub Main)* 3parametri.are semni icati&)4 speci ica $ariabilele ale caror $alori sunt transmise modulului apelat Metode: ( prin &aloare (B+ Value) Module Module Su" MB:CB(B+Val M Bs -nteger) M % JKL Console.'rite$ine(3marca este 3 H M) End Su" Su" N1ME(B+Val N? Bs String) N? % 3-on -onescu4 Console.'rite$ine(3numele 6i prenumele: 3 H N?) End Su" Su" SB$B:-1(B+Val SB$ Bs 7ou"le) SB$ % MNJ.J Console.'rite$ine(3salariul: 3 H sal ) End Su" !ub Main( ) 7im M Bs -nteger 7im N? Bs String 7im SB$ Bs 7ou"le MB:CB(M) N1ME(N?) SB$B:-1(SB$) Console.:ead$ine( ) End !ub End Module ( prin adresa (B+ :e erence) Module Module Su" MB:-:ESB$(B+:e SB$ Bs 7ou"le) SB$ % MMNJ.J Console.'rite$ine(3Salariul ma#orat este de 3 H SB$) End Su" !ub Main( ) 7im SB$ Bs 7ou"le 7im SB$BCT1B$ Bs 7ou"le % MKNJ.J Console.'rite$ine(3Salariul actual este 3 H SB$BCT1B$) MB:-:ESB$(SB$BCT1B$) Console.:ead$ine( ) End !ub End Module

7eclararea unctiilor utili.ator: Function nume#functie AS tip#valoare#variabila#returnata Module Module Function N1ME( ) Bs String nume % 3-on -onescu4 End Function Function SB$B:-1( ) Bs 7ou"le SB$B:-1 % MKNJ.J End Function !ub Main( ) 7im N1ME$E Bs String 7im SB$ Bs 7ou"le N1ME$E % N1ME( ) SB$ % SB$B:-1( ) Console.'rite$ine(3Numele: 3 H N1ME$E) Console.'rite$ine(3Salariul: 3 H SB$) Console.:ead$ine( ) End !ub End Module

:eguli: ( su"rutinele apelate de c)tre programul principal 3Su" Main( )4 tre"uie instalate >ntre liniile(sistem Module Modulen ............ Su" Main( ) ( parametrii care se transmit programului principal (director) tre"uie de ini!i >n cadrul su"programelor apelate. ( apelul su"programelor se poate reali.a >n cadrul programului principal prin simplul enun! al numelui de su"program 6i prin parametri.are 3oar"e4= cum ar i spre e,emplu: N1ME$E % N1ME( )

Programarea aplicaiilor de tip CONSOLE prin utilizarea casetelor de dialog i mesaje Func!ia InputBox) * introducere de date:

nu#e($ariabil7InputBox)>#esa=8.? >titlu8? $aloare(i#plicita? Xpo'? @po'/*


( mesa# % te,tul mesa#ului adresat operatorului pentru introducerea de date ( titlu % este titlul casetei de introducere a datelor ( &aloare(implicit) % o &aloare propusa de program ca raspuns implicit si care poate i suprascrisa ( 8po. % po.i!ia (e,primat) >n pi,eli) a coordonatei ori.ontale pe ecran ( 9po. % po.i!ia (e,primat) >n pi,eli) a coordonatei &erticale pe ecran Su" Main( ) 7im marca Bs -nteger 7im nume Bs String 7im sal Bs 7ou"le marca % -nputBo,( 3tastea.a marca4) nume % -nputBo,(3tastea.a numele 6i prenumele4) sal % -nputBo,(3tastea.a salariul4) Console.'rite$ine(3marca: 3 H marca) Console.'rite$ine(3numele 6i prenumele: 3 H nume) Console.'rite$ine(3salariul: 3H sal) Console.:ead$ine( ) End Su" Func!ia Ms+Box) * a i6ar de mesa#e 6i5sau re.ultate pe terminal

Ms+Box)>#esa=8 .A $ariabila/? buton? >titlu8*


( mesa# % este mesa#ul necesar a i6)rii pe ecran ( &aria"ila % este identi icatorul &aria"ilei a c)rei &aloare tre"uie= e&entual= a i6at) pe ecran ( "uton % a isea.a "utoane de comand) (;C= Cancel= :etr+ etc.) 6i unele sim"oluri de aten!ionare (semnul e,clam)rii= sim"olul de in orma!ie= etc.) introduse prin identi icatori (cu optiunea OMsgBo,St+le) sau prin &alori. CAnd unul dintre argumente lipse6te= argumentele ulterioare &or i precedate de &irgule delimitati&e. 7e e,emplu:
;C;nl+ . . . . . . . . . . K ;CCancel . . . . . . . . M B"ort:etr+-gnore . . . E 9esNoCancel . . . . . . P 9esNo . . . . . . . . . . . .N :etr+Cancel . . . . . . . J Critical . . . . . . . . . . . MQ (8) Ruestion . . . . . . . . . . PE (S) E,clamation . . . . . . . NT (U) -n ormation . . . . . . . QN (i)

Su" Main( ) 7im marca Bs B+te 7im numepren Bs String 7im orelucrate Bs -nteger 7im salorar Bs 7ou"le 7im deplata Bs 7ou"le marca % -nputBo,(3marca4) numepren % -nputBo,(3nume 6i prenume4= 3calcul drepturi4) orelucrate % -nputBo,(3ore lucrate4= = NK) salorar % -nputBo,(3salariul orar4= = = MEK= MTK) deplat) % orelucrate V salorar MsgBo,(3drepturile de plat) sunt: 3 H deplata= OMsgBo,St+le--n ormation= 3calcul drepturi de plat)4) End Su"

$ro%ramarea structurilor lo%ice fundamentale Structurile secveniale (liniare) Sec&enta de program re.ol&a un singur ca.. !ub Main( ) 7im nume"en= denprod Bs String 7im cantli& Bs -nteger 7im pret= &lr Bs 7ou"le nume"en % -nputBo,(3tastati numele "ene iciarului4) denprod % -nputBo,(3tastati denumirea produsului4) cantli& % -nputBo,(3tastati cantitatea li&rata4) pret % -nputBo,(3tastati pretul de li&rare4) &lr % cantli& V pret Console.'rite$ine(3Bene iciarul: 3 H nume"en) Console.'rite$ine(3?rodusul: 3 H denprod) Console.'rite$ine(3Valoarea li&rata: 3 H &lr) Console.:ead$ine( ) End !ub Structurile repetitive (iterative* E,ecutia repetata a unei sec&ente. For ... Next !ub Main( ) 7im nume"en= denprod Bs String 7im cantli&= contor Bs -nteger 7im pret= &lr Bs 7ou"le For contor % M To MJ nume"en % -nputBo,(3tastati nume "ene iciar4) denprod % -nputBo,(3tastati denumire produs4) cantli& % -nputBo,(3tastati cantitatea li&rata4) pret % -nputBo,(3tastati pret li&rare4) &lr % cantli& V pret Console.'rite$ine(3"ene iciarul: 3 H nume"en) Console.'rite$ine(3produsul: 3 H denprod) Console.'rite$ine(3&aloarea li&rata: 3 H &lr) Console.:ead$ine( ) Ne,t End !ub

<4ile --- En <4ile

)contori'at*

Module Module Su" rutina( ) .......... .......... End Su" !ub Main( ) 7im contor as "+te % M 7im nrtotal as "+te % EJ '0ile contor W% nrtotal rutina( ) contor X% M End '0ile End !ub End Module <4ile --- En <4ile )necontori'at*

Module Module Su" rutina( ) .......... .......... End Su" !ub Main( ) 7im danu Bs String danu % -nputBo,(3doriti sa lucratiS da5nu4) '0ile 1case(danu) % 37B4 rutina( ) danu % -nputBo,(37oriti sa continuati proceduraS da5nu4) End '0ile MsgBo,(3procedura s(a inc0eiat4) End !ub End Module

Structurile alternative (selective) IF B E&" IF Module Module !ub Main( ) 7im n"= dp Bs String 7im cc= cl= di Bs -nteger 7im danu Bs String % 37B4 '0ile 1case(danu) % 37B4 n" % -nputBo,(3tastea.a nume "ene iciar4) dp % -nputBo,(3tastea.a denumire produs4) cc% -nputBo,(3tastea.a cantitate contractata4) cl % -nputBo,(3tastea.a cantitatea li&rata4) - cc < cl T0en di % cc ( cl Console.'rite$ine(3di erenta datorata O"ene iciarului 3 H n" H 3la produsul 3 OH dp H 3 este de 3 H di ) End danu % -nputBo,(3mai lucratiS da5nu4) End '0ile MsgBo, (3lucrare inali.ata4) End !ub End Module

IF T4en BElse --- E&" IF Module Module !ub Main( ) 7im n"= dp Bs String 7im cc= cl= di Bs -nteger 7im danu Bs String % 37B4 '0ile 1case(danu) % 37B4 n" % -nputBo,(3tastea.a nume "ene iciar4) dp % -nputBo,(3tastea.a denumire produs4) cc% -nputBo,(3tastea.a cantitate contractata4) cl % -nputBo,(3tastea.a cantitatea li&rata4) - cc < cl T0en di % cc ( cl Console.'rite$ine(3di erenta datorata O"ene iciarului 3 H n" H 3 la produsul O3 H dp H 3 este de 3 H di ) Else di % cl ( cc Console.'rite$ine(3di erenta li&rata >n Oplus "ene iciarului 3 H n" H 3 la produsul 3 H dp H 3 este de 3 H di ) End danu % -nputBo,(3mai lucratiS da5nu4) End '0ile MsgBo,(3lucrare inali.ata4) End !ub

0tructura alternati$ cu #ai #ulte ra#uri )i#bricat* IF THE& --- EL0E IF THE& --- EL0E --Module Module !ub Main( ) 7im np Bs String 7im ore Bs B+te 7im sal= drept Bs 7ou"le 7o np % -nputBo, (3Tastati numele4) sal % -nputBo, (3Tastati salariul negociat4) ore % -nputBo, (3Tastati numarul de ore contractat4) - ore % E T0en drept % sal V K.EJ Else- ore % N T0en drept % sal V K.J Else- ore % Q T0en drept % sal V K.LJ Else- ore % T T0en drept % sal Else- ore % MK T0en drept % sal V M.J E$SE MsgBo,(3nr.ore nu e >n standarde. :e&eniti4) MsgBo,(3Consideram drepturi egal cu .ero4) drept % K End Console.'rite$ine(3salariatul 3 H np H O 3 are un drept de 3 H drept) $oop '0ile MsgBo,(3continuati lucrareaS4= O MsgBo,St+le.9esNo) % MsgBo,:esult.9es End !ub End Module

0ELECT C!0E C structuri alternati$e i1u'ate Module Module !ub Main( ) 7im dp Bs String 7im disp Bs $ong 7o dp % -nputBo,(3tastati denumire produs4) disp % -nputBo,(3tastati disponi"il >n stoc4) Select Case disp Case -s W JKKKK MsgBo,(3disponi"il insu icient4= O MsgBo,St+le.Critical= dp) Case JKKKK To LNYYY MsgBo,(3este acoperita o erta M4= O MsgBo,St+le.-n ormation= dp) Case LJKKK To YYYYY MsgBo,(3este acoperita o erta E4= O MsgBo,St+le.-n ormation= dp) Case -s < MKKKKKK MsgBo,(3su icient pentru o erta P4= O MsgBo,St+le.-n ormation= dp) End Select $oop 1ntil MsgBo,(3continuati ca.urileS4= MsgBo,St+le.9esNo) % MsgBo,:esult.No End !ub End Module

PROGRAMAREA APL CA! LOR "E # P $% N"O%S& Bplica!iile de tip 3'indows4 o er) utili.atorului supra a!a unui or(mular pentru diri#area programului. ?e supra a!a ormularului se pot instala di&erse 3controale4= prin a c)ror accesare pot i generate su"programele unei aplica!ii mai comple,e. Formularul purt)tor de controale de&ine inter a!a sistemului cu utili.atorul. ?roiectarea unui ormular necesit) accesarea pictogramei 3'indows Bpplication4 din caseta de dialog 3New ?ro#ect4. B&And >n &edere necesitatea de includere a controalelor pe supra a!a ormularului= tre"uie s) i pre.ent) pe ecran cutia cu instrumente (ToolBo,). 7ac) aceasta lipse6te= se poate apela prin op!iunea 3ToolBo,4 din meniul View.
NOT: &up' cum s-a mai preci(at, caseta cu instrumente cuprinde mai multe picto%rame ()n unele versiuni *+), care )n momentul plas'rii lor pe formular devin a,a-numitele -controale. ale aplica/iei. $rincipalele propriet'/i ale acestora au fost pre(entate )n 0.1.2.2. 3n continuare, vor fi oferite am'nunte la nivelul aplica/iilor )n care se vor utili(a diversele controale

Controale '()(Net ?ictogramele e,istente >n cutia cu instrumente (ToolBo,) constituie o"iecte programa"ile. Fiecare asemenea o"iect poate ormula un su"program din cadrul aplica!iei= >n momentul >n care desemnea.) un control. 3Controlul4 este oricare pictograma din cutia cu instrumente= >n momentul >n care aceasta este 3tras)4 (dragat)) pe cadrul ormularului. ?entru a putea i translatat) pe ormular= pictograma este accesat) cu mausul 6i apoi= prin trasare continu)= i se ormea.) un cadru pe ormular. 7up) declic= pe ormular r)mAne imaginea controlului selectat anterior. 1nele imagini cuprind >ntreg c0enarul ormat prin trasarea mausului= altele (de e,emplu Com"oBo,= 7ateTime?icker s.a.) ocup) un spa!iu limitat= standardi.at de c)tre sistem. Zn sistemul V.B.Net e,ist) NT de controale posi"ile. Zn continuare= ne propunem pre.entarea celor mai des utili.ate= rele&And= totodat)= principalele lor caracteristici. Zn mod con&en!ional= &om sta"ili urm)toarea terminologie al)turi de semni ica!ia iec)reia: ( prin 3rol4 se &or pre.enta principalele unc!ii pe care le pot >ndeplini[ ( prin 3modul implicit de a i6are4 se &or pre.enta elementele speci ice de a i6are pe supra a!a ormularului[ ( prin 3principalele propriet)!i4 &or i enun!ate acele atri"ute ale o"iectului asupra c)rora inter&in= de o"icei= utili.atorii. Zn momentul proiect)rii controalelor pe ormular= sistemul V.B.net acord) denumiri= titulari.)ri 6i moduri de a i6are implicite pentru anumite controale: ( 37enumirea4 este numele acordat de sistem iec)rui control= la ni&elul propriet)!ii NBME. B ost speci icat) anterior necesitatea de a acorda o denumire(utili.ator iec)rui o"iect= >n &ederea acces)rii independente a acestor o"iecte= >n cadrul unei aplica!ii. Zn ca.ul >n care proiectantul nu personali.ea.) ast el controalele pe care le utili.ea.)= sistemul le &a numerota printr(o denumire implicit). 7e e,emplu: ButtonM= ButtonE= etc. ( 3Titulatura4 corespunde propriet)!ii TE8T= care= >n ca.ul nepersonali.)rii controalelor= sistemul o ormulea.) identic cu proprietatea NBME (>n marea ma#oritate a ca.urilor). Zn ca.ul titulaturii= proiectarea controalelor tre"uie s) ai") >n &edere acilit)!ile necesare oric)rei inter e!e cu utili.atorul. Bceasta >nseamn) c) este totdeauna util) o titulare din partea proiectantului= printr(o ormulare cAt mai apropiat) de scopul pentru care controlul >n cau.a a ost inclus >n ormular. 7e e,emplu= un "uton de comand) a c)rui scop este de a declan6a un su"program prin care se calculea.) impo.itul pe salariu= poate r)mAne cu proprietatea NBME ( 3"uttonM4= dar este indicat ca s) i se acorde titulatura 3calcul impo.it4.

Bst el= >n cadrul programului= acest "uton de comand) &a putea i manipulat prin identi icatorul 3"uttonM4= dar accesarea su"programului de c)tre operator &a putea i o"!inut) prin clic (sau alt e&eniment) pe acel "uton de comand) pe supra a!a c)ruia este >nscris) titulatura 3calcul impo.it4. ( 3Modul de a i6are4 repre.int) igura gra ic) a o"iectului pe ormular= >nso!it) de titulatura implicit).
NOT: 4t5ta timp c5t unele propriet'/i corespund mai multor controale, atunci c5nd vor fi expuse principalele propriet'/i ale acestora, vor fi explicitate numai pentru primul ca( de utili(are. $entru urm'toarele ca(uri )n care mai apare o aceea,i proprietate - aceasta se va specifica, f'r' a i se mai oferi explica/ii detaliate. 3n virtutea celor explicate anterior, nu se vor mai expune explica/ii privind propriet'/ile -visible., -enabled., propriet'/ile de po(i/ionare ,i dimensionare, cele coloristice, proprietatea -tabindex., asupra c'rora s-au oferit explica/ii )n para%raful precedent.

Zn igura P.MK. este pre.entat) o sec&en!) din cutia cu instrumente (ToolBo,)= a&And >n con!inut cAte&a dintre cele NT de controale utili.ate >n programarea aplica!iilor de tip 'indows ( V.B.Net.

Controlul POI&TER: 6olul acestuia este de a trans era 6i5sau de a redimensiona alte controale anterior transpuse >n ormular. Nu are denumire sau titulatura implicite 6i nu generea.) nici o orm) geometric) pe ormular Controlul L!BEL: 6olul sau este de a a i6a un te,t solicitat de proiectant. Bcest te,t nu poate i modi icat ulterior= decAt prin program. Te,tele a i6ate ser&esc c) etic0ete pentru di&ersele imagini sau alte controale proiectate pe ormular= sau pentru a i6area de mesa#e= c) r)spuns la un e&eniment oarecare.

Modul implicit de afi,are este o arie trasat) de c)tre proiectant= con!inAnd titulatura $BBE$M. $rincipalele propriet'/i &i.ea.) posi"ilit)!ile de >ncadrare a unui te,t sau a unei imagini.

( B;:7E:ST9$E determin) tipul de c0enar al etic0etei. C0enrul poate i: ( N;NE ( )r) c0enar ( F-8E7 S-N/$E ( c0enar dintr(o singur) linie[ ( F-8E7 P7 ( c0enar spa!ial. ( B1T;S-FE prin care se poate m)ri spre dreapta marginea etic0etei pentru a cuprinde te,tul scris pe ori.ontal). ?entru a m)ri automat la!imea ariei= &aloarea propriet)!ii tre"uie s) ie comutat) la T:1E. ( F;NT sta"ile6te tipul caracterelor care pre.int) te,tul inclus >n cadrul etic0etei 6i dimensiunea lor. ( -MB/E este urmat) de puncte de suspensie. E,ecutAnd clic pe aceste puncte de suspensie= se &a putea opta pentru o imagine propus) de sistem= imagine care &a i >ncadrat) >ntre limitele etic0etei. ( TE8TB$-/N o er) nou) posi"ilit)!i de plasare a te,tului >n cadrul etic0etei: Top$e t (>n coltul de sus( stAnga)= TopCenter (>n centru(partea superioar))= Top:ig0t (>n col!ul de sus(dreapta)= Middle$e t (>n mi#locul &ertical al etic0etei= cadrat la stAnga)= MiddleCenter (>n mi#locul &ertical al etic0etei= cadrat central)= Middle:ig0t (>n mi#locul &ertical al etic0etei= cadrat la dreapta)= Bottom$e t (>n col!ul #os(stAnga)= BottomCenter (>n centru ( partea in erioar))= Bottom:ig0t (>n col!ul #os(dreapta). Controlul TEXTBOXD 6olul s)u este de a a i6a te,te introduse de proiectant sau te,te incluse prin program. Casetele de te,t (Te,tBo,) sunt deose"it de utile >n programele care recep!ionea.) date elementare >n timpul e,ecu!iei 6i date re.ultate din di&erse opera!ii programate. Modul implicit de afi,are este constituit din c0enarul trasat pe ormular= dar redus ini!ial de sistem >n anumite limite standard. $rincipalele propriet'/i: ( M1$T-$-NE este proprietatea prin care casetele de te,t pot >nmaga.ina mai multe rAnduri de te,t. Zn momentul >n care &aloarea acestei propriet)!i este comutat) la T:1E= dimensiunile &erticale standard ale casetei proiectate se de.&olt) la ni&elul trasat ini!ial de c)tre proiectant. ( TE8TB$-/N ( are &alorile 3le t4= 3center4= 3rig0t4. Bcestea semni ic) modul >n care &a i cadrat te,tul >nscris >n caseta (din marginea stAnga= >n centru= din marginea dreapt)). ( B;:7E:ST9$E ( SC:;$$BB:S este proprietatea prin care sistemul poate ad)uga "are de derulare casetei de te,t= atunci cAnd= ie pe ori.ontal)= ie pe &ertical)= te,tele dep)6esc cadrul ini!ial al casetei. ;p!iunile sunt: 30ori.ontal4= 3&ertical4= 3"ot04= prin care se adaug) casetei "are de derulare ori.ontale= &erticale sau am"ele. 7e re!inut ca "arele de derulare ori.ontale 6i am"ele "are de derulare nu unc!ionea.) decAt dac) proprietatea Te,tBlign are &aloarea 3le t4. ( MB8$EN/T* de ine6te num)rul ma,im de caractere posi"il a i a i6ate >ntr(o caset) de te,t (>ntre M ( PELQL caractere). ( F;NT o er) posi"ilitatea de a alege tipul caracterelor prin care se &or >nscrie te,tele >n cadrul casetei. Controlul :ROUPBOXD 6olul s)u este de a grupa di&erse o"iecte >ntr(o caset). ?entru aceast) cuprindere a altor controale= se recomand) ini!ial trasarea cadrului /roupBo, 6i apoi includerea de alte o"iecte. :e.ultatul >nglo")rii altor controale este acela c)= dorind s) se trans ere toate o"iectele ast el >nglo"ate >ntr(o .on) a ormularului= este su icient) mutarea cadrului pentru toate cele pe care le cuprinde.

Modul implicit de afi,are este cadrul trasat de proiectant= >nso!it de titulatura /roupBo,M (sau oricare num)r nepersonali.at). $rincipalele propriet'/i nu &i.ea.) decAt pe cele undamentale (NBME= TE8T= F;NT= etc.). Controlul BUTTO&D 6olul "utoanelor de comand) constituie cea mai u.itat) orm) de a genera di&erse proceduri. B&And >n &edere simplitatea imaginii 6i posi"ilitatea de a intitula di&ers aceste imagini= utili.atorii pre er) proiectarea "utoanelor de comand) a!) de alte 3declan6atoare4 de proceduri. Fiind destinate >n mod direct acces)rii procedurilor prin simpla ac!ionare a mausului= "utoanele de comand) mai sunt numite 3pus0 "utton4. Modul implicit de afi,are este o orma dreptung0iular) sau p)trat)= con orm pre erin!elor utili.atorului= a&And titulatura ButtonM (sau oricare num)r nepersonali.at). $rincipalele propriet'/i au >n &edere= >n acest ca.= rec&en!a de utili.are a acestui o"iect la ni&elul aceluia6i ormular. Bceasta >nseamn) pruden!) >n alegerea denumirii 6i titulaturii di&erselor "utoane de comand)= >n sensul c) aceste dou) propriet)!i (NBME 6i TE8T) tre"uie s) ie incon un.i"ile a!) de altele= pe de o parte 6i= pe de alt) parte= s) ie cAt mai sugesti&e pentru operator. Elementul sugesti& poate necesita= uneori= utili.area unor etic0ete care s) >nso!easc) imaginea "utonului de comand)= cu toate c)= prin proprietatea TE8T se are >n &edere o titulatur) corespun.)toare. ( CBNCE$B1TT;N este o proprietate de e,cep!ie pentru acest control. ?rin aceasta se permite acti&area unui alt "uton de comand)= dac) se &a ac!iona tasta ESC. Controlul CHECEBOXD 6olul s)u consta >n &alidarea unei anumite op!iuni (sau a mai multora). 7in acest moti&= se mai nume6te 3caseta de &alidare4. ;p!iunile sunt de tipul 3ade&)rat5 als4= adic) 3accesat5neaccesat4. 7i&ersele e&enimente sau ac!iuni din timpul e,ecu!iei aplica!iei pot a ecta selec!ia unei casete de &alidare. Modul implicit de afi,are este c0enarul trasat de proiectant= >n cadrul c)ruia e,ist) un p)trat cu sau )r) "i ) >n interiorul s)u. Bre titulatura C0eckBo,M. Bi a e,ist) pentru situa!ia T:1E (accesat) 6i nu e,ist) pentru ca.ul in&ers. ?rincipalele propriet)!i sunt determinate de starea controlului >n program. Testarea st)rii controlului poate i utili.at) >n con!inutul unei proceduri= >n &ederea e,ecu!iei unei ac!iuni. ( C*ECCE7 are dou) &alori posi"ile: T:1E 6i FB$SE. Valoarea T:1E impune e,isten!a "i ei >n cadrul p)tratului= &aloarea FB$SE elimin) "i a. ( C*ECCSTBTE e,prim) starea casetei de &alidare 6i este determinat) de &aloarea propriet)!ii 3C0ecked4. ?roprietatea 3C0eckState4 are trei &alori: c0ecked= unc0ecked 6i indeterminate. Valoarea 3c0ecked4 corespunde &alorii 3True4 a propriet)!ii 3C0ecked4. Valoarea 31nc0ecked4 corespunde &alorii 3False4 a propriet)!ii 3C0ecked4. Valoarea 3-ndeterminate4 corespunde &alorii 3True4 a propriet)!ii 3C0ecked4= dar >n mod selecti& 6i anume atunci cAnd solu!ia &alid)rii este posi"il). ( B??EB:BNCE are dou) &alori: 3Normal4 6i 3Button4. Valoarea 3Normal4 corespunde a i6)rii casetei de &alidare ca atare= cu sau )r) "i ). Valoarea 3Button4 trans orm) caseta de &alidare >n imaginea unui "uton de comand).

( TBBST;? poate a&ea &alorile T:1E 6i FB$SE. Valoarea 3True4 se olose6te atunci cAnd se dore6te acti&area >n ordine a casetelor de &alidare prin tasta TBB= ca. >n care se cere ca= ini!ial= o singur) caset) s) ie "i at). Controlul R!"IOBUTTO&D 6olul acestui control este similar celui anterior. -dentic casetelor de &alidare= "utonul(radio o"!ine &alidarea unei anumite op!iuni. 7i erit de casetele de &alidare= prin "utonele(radio nu se poate accesa decAt o singur) &ariant) dintre cele proiectate. 7in acest moti& aceste "utoane se numesc 3radio4= adic) >n momentul acces)rii unui

"uton= oricare altul ar i ost selectat anterior se &a deselecta automat (identic "utoanelor care ser&esc sc0im")rii lungimilor de und) radio). Modul implicit de afi,are este cel trasat de proiectant= a&And >n interior un cercule! cu sau )r) punct central. Titulatura implicit) este 3:adioButtonM4. $rincipalele propriet'/i sunt identice cu cele ale casetelor de &alidare: ( B??EB:BNCE ( C*ECCE7 ( TBBST;? 6.a. Controlul LI0TBOXD 6olul casetei lista este acela de a cuprinde di&erse articole op!ionale= dintre care utili.atorul s) poat) alege oricare dintre aceste articole. Fiecare articol poate genera o procedur). ;ricare articol cuprins >n lista este accesi"il utili.atorului. Brticolele pot i incluse prin proprietatea 3-tems4. Bria re.er&at) prin proiectare pentru caseta lista poate i ne>nc)p)toare pentru num)rul de articole solicitat de proiectant. Zn asemenea ca.= sistemul adaug) >n mod automat o "ar) de derulare &ertical). Zn ca.ul >n care dimensiunea articolelor dep)6e6te capacitatea ori.ontal) a ariei pre&).ut) de c)tre proiectant= se poate proiecta ata6area unei "are de derulare ori.ontale. Modul implicit de afi,are este aria trasat) de c)tre proiectant= a&And titulatura ini!ial) 3$istBo,M4. $rincipalele propriet'/i sunt: ( -TEMS: Este proprietatea prin care se pot include ini!ial articole >n caseta(list). ;p!iunea acestei propriet)!i este 3Collection4= dup) care urmea.) puncte de suspensie. ?rin clic pe punctele de suspensie= sistemul

a i6ea.) ereastra 3String Collection Editor4. Zn aceast) ereastr) se &or include articolele considerate necesare drept con!inut al listei. Brticolele incluse sunt considerate implicit 6ir de caractere. 7up) culegerea tuturor articolelor= se e,ecut) clic pe "utonul ;C al erestrei 6i toate articolele &or i preluate >n aria casetei(list). Zn ca.ul >n care num)rul articolelor dep)6e6te capacitatea &ertical) a ariei casetei= sistemul adaug)= >n mod automat= o "ar) de derulare &ertical). ( *;:-F;NTB$SC:;$$BB: este o proprietate cu &alori "ooleene (True5False)= implicit) este &aloarea False. Zn ca.ul >n care unele articole au un num)r de caractere care dep)6esc capacitatea ori.ontal) a casetei= se &a comuta &aloarea acestei propriet)!i la 3True4. Bst el= casetei(list) i se adaug) o "ar) de derulare ori.ontal)= necesar) lecturii articolelor de o lungime mai mare. ( M1$T-C;$1MN o er) posi"ilitatea de e,cludere a "arei de derulare &erticale. ?roprietatea are &aloarea implicit) 3False4. Comutat) iind la &aloarea 3True4= sistemul separ)= prin coloane= num)rul articolelor incluse= iind necesar) numai "ara de derulare ori.ontal)= pentru citirea articolelor din coloanele listei. ( SC:;$$B$'B9SV-S-B$E o er) posi"ilitatea de a nu i &i.i"ile "arele de derulare= decAt >n ca.urile >n care sunt necesare lecturii articolelor. ( S;:TE7 are unc!ia de a sorta articolele >n ordine al a"etic). ?entru aceasta= proprietatea 3Sorted4 tre"uie comutat) la &aloarea 3True4. ( TBBST;? Controlul COMBOBOXD 6olul acestui control este asem)n)tor cu cel al casetelor(list) ($istBo,). Casetele com"inate (Com"oBo,) o er) acelea6i posi"ilit)!i de &alidare ca 6i "utoanele(radio= dar pot >nglo"a mai multe alternati&e= con orm

posi"ilit)!ilor casetelor(list)). 7eose"irea opera!ional) >ntre casetele(list) 6i casetele(com"inate const) >n aceea ca >n casetele(list) sunt &i.i"ile toate articolele introduse= deose"it de casetele(com"inate >n care nu se &ede decAt titlul casetei= articolele iind ascunse. 7in ac Modul implicit de afi,are este standardi.at de sistem= indi erent de de aria trasat) de proiectant. Cadrul se reduce la dimensiunile necesare a i6)rii titulaturii casetei (ini!ial Com"oBo,M). Zn plus= e,ist) o s)geata de derulare &ertical)= prin care se pot &i.uali.a articolele incluse >n list). $rincipalele propriet'/i sunt asem)n)toare cu cele ale casetelor(list). ( -TEMS ( proprietate necesar) includerii articolelor >n list). -ncluderea are loc prin acela6i procedeu speci icat anterior: se e,ecut) clic pe punctele de suspensie care >nso!esc &aloarea 3Collection4 a propriet)!ii. ( S;:TE7 ( TBBST;? ( 6.a. Controlul H0CROLLB!RD 6olul controlului este de a igura o "ar) de derulare ori.ontal). Scopul acestora este de a parcurge listele cu un cuprins &ast de articole. Bara de derulare ori.ontal) are rol similar cu cea din mediul 'indows= derulAnd pe ori.ontal) elementele >nscrise pe o linie editat). -ndic) po.i!ia pe care o ocup) un anumit element a i6at >n cadrul unei linii de editare sau po.i!ia unei &alori >ntr(un &ector. Bspectul unei "are de derulare ori.ontal) este un dreptung0i (dispus ori.ontal) al c)rui limite (dreapta 6i stAnga) sunt delimitate de pointerii de derulare. Zntre aceste limite glisea.) un cursor care indic) locul ocupat de articolul (elementul) curent >n cadrul mul!imii care se derulea.). Modul implicit de afi,are const) >n dimensiunile trasate de c)tre proiectant (un dreptung0i)= )r) a e,ista o titulatura ini!ial). 7reptung0iul (considerat un a,) este delimitat de pointerii de derulare ( )= >ntre care e,ist) cursorul. $rincipalele propriet'/i : ( M-N-M1M 6i MB8-M1M au= implicit= &alorile K= respecti& MKK. Bceste &alori (sau oricare altele speci icate de c)tre proiectant) determina inter&alul >ntre care &a glisa cursorul (num)rarea ca.urilor). ( $B:/EC*BN/E i,ea.) num)rul de 3pa6i4 pe care >l &a e,ecuta cursorul >ntre cele dou) limite ale a,ului= >n unc!ie de &alorile date propriet)!ilor minim) 6i ma,im). 7e e,emplu= dac) &aloarea propriet)!ii 3Ma,imum4 este i,at) la 3MN4= dac) &aloarea propriet)!ii 3Minimum4 este i,at) la 3E4 6i dac) &aloarea propriet)!ii 3$argeC0ange4 este i,at) la 3P4= est punct de &edere= casetele(com"inate nu ocup) spa!iu e,cesi& pe supra a!a ormularului. Zn timpul e,ecu!iei= pentru a putea &i.uali.a articolele incluse >n list)= se &a accesa s)geata de derulare &ertical) care apare totdeauna >n dreapta titulaturii casetei. cursorul &a e ectua patru pa6i >ntre cele dou) e,treme= atunci cAnd se e,ecut) clic pe supra a!a a,ului (MN ( E % ME : P % N). ( SMB$$C*BN/E nu poate dep)6i &aloarea lui $argeC0ange 6i i,ea.)= de asemenea= un ast el de increment= dar ac!ionea.) atunci cAnd se e,ecut) clic pe pointerii de derulare. ( VB$1E speci ic) po.i!ia ini!ial) a cursorului pe a,. Valoarea acestei propriet)!i tre"uie s) ie cuprins) >n inter&alul &alorilor propriet)!ilor SmallC0ange 6i $argeC0ange. Valoarea propriet)!ii Value marc0ea.) punctul de plecare a cursorului >n inter&alul proiectat (de e,emplu= con orm algoritmului precedent= de la pasul 3M\= adic) &aloarea 3E4= de la pasul 3E\= adic) &aloarea 3J4= etc. Controlul %0CROLLB!RD Bre acelea6i caracteristici esen!iale cu controlul *ScrollBar= pre.entAnd= >ns)= o "ar) &ertical) de derulare. Controlul "!TETIMEPICEERD 6olul este de a pre.enta data curent).

Modul implicit de afi,are este standard 6i cuprinde data curent) (.iua ( luna ( data ( anul). Zn momentul e,ecu!iei= a i6ea.) (prin derulare &ertical)) calendarul lunii curente. Zn partea superioar) a imaginii e,ist) pointeri de derulare ori.ontal). ?rin accesarea acestora sistemul a i6ea.) calendarul lunilor urm)toare sau a celor precedente. $rincipalele propriet'/i sunt speci ice datelor calendaristice: ( MB87BTE ( implicit data calendaristic) ME5PM5YYYT ( M-N7BTE ( implicit data calendaristic) M5M5MLJP ( VB$1E ( data calendaristic) curent). Controlul MO&THC!LE&"!RD Este similar controlului precedent= cu e,cep!ia aptului c) a i6ea.) >ntreaga arie trasat) de c)tre proiectant. Zn cadrul acestei arii a i6ea.) calendarul lunar curent. ?ropriet)!ile sunt identice 6i= de asemenea= pointerii de derulare ori.ontal)= prin care se o"!in calendarele lunilor anterioare 6i &iitoare.
NOT: 6eamintim c' propriet'/ile expuse )n acest para%raf nu epui(ea(' )ntre% arsenalul controalelor. $e de alt' parte, trebuie avute )n vedere, )n primul r5nd, propriet'/ile cu caracter %eneral, specificate )n cadrul 0.1.2. .