Sunteți pe pagina 1din 22

Mediul de programare .

NET (NET Framework):

Compilatorul VB este programul translator al sistemului de programare VB Specificaiile comune de limbaj (CLS = Common Language Specifications) Serviciile WEB - interfa HTML (HyperText Markup Language). Interfaa cu vizuala utilizatorul (Graphical User Interface GUI) ecranul (designul) pentru formularele/formatele de programare si pentru afiarea de imagini.

Date i XML constituie modulul prin care se realizeaz schimbul de date pe Internet. XML (eXtensible Markup Language) se utilizeaz pentru a descrie i pentru a reprezenta datele. Biblioteca claselor de baz (BCL = Base Class Library) conine clasele de baz ale programelor.NET. VB.Net este un limbaj orientat pe obiecte. Toate obiectele fac parte dintr-o clas denumit SYSTEM. Biblioteca rutinelor comune (Common Library Runtime CLR) interfata limbajelor cu SO (Windows).

Modele (conceptuale) de programare . Modelul orientat procedural => algoritmi specifici de rezolvare a problemelor. Modelul orientat pe obiecte => particularizarea (procedurala) a unor obiecte programabile Obiecte in VB.Net: OBIECTUL Formular Bar derulant orizontal Bar derulant vertical Buton de comand Buton de opiune Caset cu list Caseta cu list combinat Caseta de imagine Caset text etc. PREFIX Frm Osb Vsb Cmd Opt Lst Cbo Img Txt

Obiectul ca unitate de prelucrare (programabila) => caracter dinamic => creare, utilizare, distrugere. Obiectul se caracterizeaz prin identiate, metode de comportament i stare. Clasa = categorie de obiecte cu caracteristici comune (proprieti i metode). Clasa poate fi accesat prin interfaa Interfaa clasei este caracterizat prin nume, tipurile atributelor i numele i descrierea metodelor. Proprietile unui obiect reprezint atributele acestuia, cum ar fi dimensiunile (laime, nalime), poziia pe formular, culoarea, etc. Text Caption Multiline Metode Prin intermediul desfuratorului de obiecte (OBJECT BROWSER), sistemul VB evideniaz metodele posibile pentru un anumit obiect. Count ADD Remove

Evenimente Oricare obiect programabil poate fi accesat printr-un eveniment. Pe de alt parte, asemenea obiecte pot declana, la rndul lor, diverse aciuni programate. EVENIMENT Load Unload Activate Deactivate Click DblClick DragDrop DragOver MouseMove MouseDown MouseUp KeyPress KeyDown KeyUp GotFocus LostFocus Change Actiune asociata implicit Afieaz coninutul unui formular pe ecran Degajeaz ecranul de un formular Activeaz un formular (acesta devine fereastr activ) Dezactiveaz un formular (acesta devine inactiv) Se acioneaz o singur dat pe butonul mouse-ului, declannd procedura programat pentru controlul respectiv Se acioneaz rapid de dou ori pe butonul mouse-ului, declannd procedura programat pentru controlul respectiv Se apas continuu butonul mouse-ului asupra unui control, se mic mouse-ul i apoi se elibereaz butonul Se apas continuu butonul mouse-ului asupra unui control i se deplaseaz mouse-ul Se mic mouse-ul traversnd peste un control Se acioneaz un buton al mouse-ului asupra unui control Se elibereaz un buton al mouse-ului de peste un control Acionarea unei taste cifrice sau letrice i eliberarea ei, sau acionarea concomitent a unei asemenea taste mpreun cu tasta ENTER sau CTRL Se acioneaz (lung) o tast asupra unui control Se elibereaz o tast asupra unui control Evideniaz un obiect atunci cnd se execut clic pe suprafaa lui Un control este dezafectat, fie prin aciunea operatorului (clic pe alt control), fie atunci cnd se utilizeaz n program metoda SETFOCUS Este evenimentul implicit pentru casetele de text. Se refer la schimbrile pe care utilizatorul le poate aduce valorilor afiate. Mutnd pointerul de nregistrare, acest eveniment afecteaz proprietatea valorii din caseta de text. Permite tragerea cursorului de derulare n diverse ferestre care conin o imagine mai mare dect dimensiunile proiectate ale ferestrei creia i-au fost ataate bare de derulare

Scroll

Mediul interactiv de dezvoltare Contine toate instructiunile necesare construirii aplicatiilor VB. Bara de meniuri - Cuprinde meniurile standard Windows (File, Edit, ) precum si meniuri cu comenzi specifice mediului de programare (Project, Debug, ). Bara cu instrumente (ToolBar) - Permite accesul la comenzile cele mai des folosite (New Project, Open File, Save Form, Cut, Copy, Paste, ..). Fereastra Form Design (Form1.vb [Design]) - Este un formular pe care programatorul proiecteaza controale. Un proiect poate avea unul sau mai multe formulare. Fereastra Solution Explorer - Cuprinde detaliile administrarii proiectului (formulare, module, fisiere). Fereastra cu proprietati (Properties) - Afiseaza valorile proprietatilor pentru formularul sau controlul curent. Caseta cu instrumente (ToolBox) - Contine pictograme folosite in proiectarea aplicatiilor pentru a desena controale pe formular, in scopul construirii interfetei cu utilizatorul. Fereastra pentru editarea codului (programul) Meniuri contextuale - Contine comenile rapide pentru actiuni utilizate frecvent. Meniul contextual se obtine executand clic dreapta pe obiectul respectiv.

Etapele de realizare a unui proiect 1. crearea interfetei programului cu utilizatorul Visual Basic .NET creeaza interfata cu utilizatorul prin furnizarea dintr-o caseta cu instrumente a unui set de controale care se pozitioneaza pe formular. Principalele controale: eticheta (Label) butonul de comanda (Button) buton de optiuni (RadioButton) caseta de text (TextBox) caseta de validare (CheckBox) caseta lista (ListBox) caseta combinata (ComboBox)

container de obiecte (GroupBox) bara de derulare orizontala (HScrollBar) bara de derulare verticala (VScrollBar)

Initializarea controalelor - posibilitati: a. initializarea controalelor, in faza de proiectare, in caseta cu proprietati a fiecarui control se face manual, prin clic pe obiectul respectiv si modificarea in lista de proprietati a valorilor dorite, astfel: 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 PROPRIETATE VALOARE Label1 Text cantitate Label2 Text pret Label3 Text valoare TextBox1 Text cantitate TextBox2 Text pret TextBox3 Text valoare TextAlign Right Button1 Text start b. intr-o procedura LOAD a formularului se da dublu click pe formular si, in fereastra de cod, se scrie urmatoarea secventa de program: Private Sub Form1_Load(...) Handles MyBase.Load Label1.Text=cantitate Label2.Text=pret Label3.Text=valoare TextBox1.Text= TextBox2.Text= TextBox3.Text= TextBox3.TextAlign=HorizontalAlignment.Right Button1.Text=Start End Sub - deci, la declansarea evenimentului LOAD a formularului se deruleaza aceasta initializare a controalelor. c. intr-o procedura CLICK a unui buton de comanda se insereaza in formular un buton de comanda, se da dublu clic pe acesta si se scrie in fereastra de cod urmatoarea secventa de program: Private Sub Button1_Click(...) Handles Button1.Click Label1.Text=cantitate Label2.Text=pret Label3.Text=valoare TextBox1.Text= TextBox2.Text= TextBox3.Text= TextBox3.TextAlign=HorizontalAlignment.Right Button1.Text=Start End Sub - deci, la declansarea evenimentului CLICK a unui buton de comanda se deruleaza aceasta initializare a controalelor. 3. executia programului Se executa clic pe butonul START din bara cu pictograme sau se alege optiunea START din meniul DEBUG. La clic pe un buton de comanda, VB.NET executa procedura Button1_Click si comenzile procedurii (se declanseaza evenimentul clic pentru a interactiona cu programul). 4. crearea programului executabil Pentru crearea programului executabil se executa clic pe sageata din dreapta cuvantului Debug si se selecteaza Release. In meniul Build apare o optiune Build-nume proiect. Se executa clic pe aceasta optiune si VB.Net inlocuieste versiunea de depanare cu una executabila.
2.

Programarea aplicatiilor de tip CONSOLE => STRUCTURA MODULARA predefinita

Construirea programelor cu valori constante prin UTILIZAREA UNOR FUNCTII SISTEM Functii uzuale: Console.WriteLine( ) afisare mesaje pe terminal Sintaxa generala: Console.WriteLine(mesaj [& variabila]) Console.ReadLine( ) mentine ecranul in asteptarea unui eveniment extern Module Module1 Sub Main( ) Dim nume As String = Ionescu Dim pren As String = Ion Console.WriteLine(Numele meu este pren & & nume) Console.ReadLine( ) End Sub End Module OBS.: Concatenarea valorilor care compun linia editat a fost realizat prin operatorul & Alte forme: Console.Write( ) afisare pe acceeasi linie Console.Read( ) lectura partiala a liniei (pana la primul spatiu)

Transmiterea parametrilor intre module si functii parametrizare oarb functie() Ex: Sub Main() parametrizare semnificativ specifica variabilele ale caror valori sunt transmise modulului apelat Metode: - prin valoare (By Value) Module Module1 Sub MARCA(ByVal M As Integer) M = 507 Console.WriteLine(marca este & M) End Sub Sub NUME(ByVal NP As String) NP = Ion Ionescu Console.WriteLine(numele i prenumele: & NP) End Sub Sub SALARIU(ByVal SAL As Double) SAL = 145.5 Console.WriteLine(salariul: & sal ) End Sub Sub Main( ) Dim M As Integer Dim NP As String Dim SAL As Double MARCA(M) NUME(NP) SALARIU(SAL) Console.ReadLine( ) End Sub End Module - prin adresa (By Reference) Module Module1 Sub MARIRESAL(ByRef SAL As Double) SAL = 1145.5 Console.WriteLine(Salariul majorat este de & SAL) End Sub Sub Main( ) Dim SAL As Double Dim SALACTUAL As Double = 1045.5 Console.WriteLine(Salariul actual este & SALACTUAL) MARIRESAL(SALACTUAL) Console.ReadLine( ) End Sub End Module

Declararea functiilor utilizator: Function nume_functie AS tip_valoare_variabila_returnata Module Module1 Function NUME( ) As String nume = Ion Ionescu End Function Function SALARIU( ) As Double SALARIU = 1045.5 End Function Sub Main( ) Dim NUMELE As String Dim SAL As Double NUMELE = NUME( ) SAL = SALARIU( ) Console.WriteLine(Numele: & NUMELE) Console.WriteLine(Salariul: & SAL) Console.ReadLine( ) End Sub End Module

Reguli: - subrutinele apelate de ctre programul principal Sub Main( ) trebuie instalate ntre liniile-sistem Module Modulen ............ Sub Main( ) - parametrii care se transmit programului principal (director) trebuie definii n cadrul subprogramelor apelate. - apelul subprogramelor se poate realiza n cadrul programului principal prin simplul enun al numelui de subprogram i prin parametrizare oarbe, cum ar fi spre exemplu: NUMELE = NUME( )

Programarea aplicaiilor de tip CONSOLE prin utilizarea casetelor de dialog i mesaje Funcia InputBox( ) introducere de date:

nume-variabil=InputBox(mesaj[, titlu, valoare-implicita, Xpoz, Ypoz])


- mesaj = textul mesajului adresat operatorului pentru introducerea de date - titlu = este titlul casetei de introducere a datelor - valoare-implicit = o valoare propusa de program ca raspuns implicit si care poate fi suprascrisa - Xpoz = poziia (exprimat n pixeli) a coordonatei orizontale pe ecran - Ypoz = poziia (exprimat n pixeli) a coordonatei verticale pe ecran Sub Main( ) Dim marca As Integer Dim nume As String Dim sal As Double marca = InputBox( tasteaza marca) nume = InputBox(tasteaza numele i prenumele) sal = InputBox(tasteaza salariul) Console.WriteLine(marca: & marca) Console.WriteLine(numele i prenumele: & nume) Console.WriteLine(salariul: & sal) Console.ReadLine( ) End Sub Funcia MsgBox( ) afiar de mesaje i/sau rezultate pe terminal

MsgBox(mesaj [& variabila], buton, titlu)


- mesaj = este mesajul necesar afirii pe ecran - variabila = este identificatorul variabilei a crei valoare trebuie, eventual, afiat pe ecran - buton = afiseaza butoane de comand (OK, Cancel, Retry etc.) i unele simboluri de atenionare (semnul exclamrii, simbolul de informaie, etc.) introduse prin identificatori (cu optiunea _MsgBoxStyle) sau prin valori. Cnd unul dintre argumente lipsete, argumentele ulterioare vor fi precedate de virgule delimitative. De exemplu:
OKOnly . . . . . . . . . . 0 OKCancel . . . . . . . . 1 AbortRetryIgnore . . . 2 YesNoCancel . . . . . . 3 YesNo . . . . . . . . . . . .4 RetryCancel . . . . . . . 5 Critical . . . . . . . . . . . 16 (X) Question . . . . . . . . . . 32 (?) Exclamation . . . . . . . 48 (!) Information . . . . . . . 64 (i)

Sub Main( ) Dim marca As Byte Dim numepren As String Dim orelucrate As Integer Dim salorar As Double Dim deplata As Double marca = InputBox(marca) numepren = InputBox(nume i prenume, calcul drepturi) orelucrate = InputBox(ore lucrate, , 40) salorar = InputBox(salariul orar, , , 120, 180) deplat = orelucrate * salorar MsgBox(drepturile de plat sunt: & deplata, _MsgBoxStyle.Information, calcul drepturi de plat) End Sub

Programarea structurilor logice fundamentale Structurile secveniale (liniare) Secventa de program rezolva un singur caz. Sub Main( ) Dim numeben, denprod As String Dim cantliv As Integer Dim pret, vlr As Double numeben = InputBox(tastati numele beneficiarului) denprod = InputBox(tastati denumirea produsului) cantliv = InputBox(tastati cantitatea livrata) pret = InputBox(tastati pretul de livrare) vlr = cantliv * pret Console.WriteLine(Beneficiarul: & numeben) Console.WriteLine(Produsul: & denprod) Console.WriteLine(Valoarea livrata: & vlr) Console.ReadLine( ) End Sub Structurile repetitive (iterative) Executia repetata a unei secvente. For ... Next Sub Main( ) Dim numeben, denprod As String Dim cantliv, contor As Integer Dim pret, vlr As Double For contor = 1 To 15 numeben = InputBox(tastati nume beneficiar) denprod = InputBox(tastati denumire produs) cantliv = InputBox(tastati cantitatea livrata) pret = InputBox(tastati pret livrare) vlr = cantliv * pret Console.WriteLine(beneficiarul: & numeben) Console.WriteLine(produsul: & denprod) Console.WriteLine(valoarea livrata: & vlr) Console.ReadLine( ) Next End Sub

While ... End While

(contorizat)

Module Module1 Sub rutina( ) .......... .......... End Sub Sub Main( ) Dim contor as byte = 1 Dim nrtotal as byte = 25 While contor <= nrtotal rutina( ) contor += 1 End While End Sub End Module While ... End While (necontorizat)

Module Module1 Sub rutina( ) .......... .......... End Sub Sub Main( ) Dim danu As String danu = InputBox(doriti sa lucrati? da/nu) While Ucase(danu) = DA rutina( ) danu = InputBox(Doriti sa continuati procedura? da/nu) End While MsgBox(procedura s-a incheiat) End Sub End Module

Structurile alternative (selective) IF END IF Module Module1 Sub Main( ) Dim nb, dp As String Dim cc, cl, dif As Integer Dim danu As String = DA While Ucase(danu) = DA nb = InputBox(tasteaza nume beneficiar) dp = InputBox(tasteaza denumire produs) cc= InputBox(tasteaza cantitate contractata) cl = InputBox(tasteaza cantitatea livrata) If cc > cl Then dif = cc - cl Console.WriteLine(diferenta datorata _beneficiarului & nb & la produsul _& dp & este de & dif) End If danu = InputBox(mai lucrati? da/nu) End While MsgBox (lucrare finalizata) End Sub End Module

IF Then Else ... END IF Module Module1 Sub Main( ) Dim nb, dp As String Dim cc, cl, dif As Integer Dim danu As String = DA While Ucase(danu) = DA nb = InputBox(tasteaza nume beneficiar) dp = InputBox(tasteaza denumire produs) cc= InputBox(tasteaza cantitate contractata) cl = InputBox(tasteaza cantitatea livrata) If cc > cl Then dif = cc - cl Console.WriteLine(diferenta datorata _beneficiarului & nb & la produsul _ & dp & este de & dif) Else dif = cl - cc Console.WriteLine(diferenta livrata n _plus beneficiarului & nb & la produsul & dp & este de & dif) End If danu = InputBox(mai lucrati? da/nu) End While MsgBox(lucrare finalizata) End Sub

Structura alternativ cu mai multe ramuri (imbricat) IF THEN ... ELSE IF THEN ... ELSE ... Module Module1 Sub Main( ) Dim np As String Dim ore As Byte Dim sal, drept As Double Do np = InputBox (Tastati numele) sal = InputBox (Tastati salariul negociat) ore = InputBox (Tastati numarul de ore contractat) If ore = 2 Then drept = sal * 0.25 ElseIf ore = 4 Then drept = sal * 0.5 ElseIf ore = 6 Then drept = sal * 0.75 ElseIf ore = 8 Then drept = sal ElseIf ore = 10 Then drept = sal * 1.5 ELSE MsgBox(nr.ore nu e n standarde. Reveniti) MsgBox(Consideram drepturi egal cu zero) drept = 0 End If Console.WriteLine(salariatul & np & _ are un drept de & drept) Loop While MsgBox(continuati lucrarea?, _ MsgBoxStyle.YesNo) = MsgBoxResult.Yes End Sub End Module

SELECT CASE structuri alternative difuzate Module Module1 Sub Main( ) Dim dp As String Dim disp As Long Do dp = InputBox(tastati denumire produs) disp = InputBox(tastati disponibil n stoc) Select Case disp Case Is < 50000 MsgBox(disponibil insuficient, _ MsgBoxStyle.Critical, dp) Case 50000 To 74999 MsgBox(este acoperita oferta 1, _ MsgBoxStyle.Information, dp) Case 75000 To 99999 MsgBox(este acoperita oferta 2, _ MsgBoxStyle.Information, dp) Case Is > 1000000 MsgBox(suficient pentru oferta 3, _ MsgBoxStyle.Information, dp) End Select Loop Until MsgBox(continuati cazurile?, MsgBoxStyle.YesNo) = MsgBoxResult.No End Sub End Module

PROGRAMAREA APLICAIILOR DE TIP WINDOWS Aplicaiile de tip Windows ofer utilizatorului suprafaa unui for-mular pentru dirijarea programului. Pe suprafaa formularului se pot instala diverse controale, prin a cror accesare pot fi generate subprogramele unei aplicaii mai complexe. Formularul purttor de controale devine interfaa sistemului cu utilizatorul. Proiectarea unui formular necesit accesarea pictogramei Windows Application din caseta de dialog New Project. Avnd n vedere necesitatea de includere a controalelor pe suprafaa formularului, trebuie s fi prezent pe ecran cutia cu instrumente (ToolBox). Dac aceasta lipsete, se poate apela prin opiunea ToolBox din meniul View.
NOT: Dup cum s-a mai precizat, caseta cu instrumente cuprinde mai multe pictograme (n unele versiuni 47), care n momentul plasrii lor pe formular devin aa-numitele controale ale aplicaiei. Principalele proprieti ale acestora au fost prezentate n &.3.2.2. n continuare, vor fi oferite amnunte la nivelul aplicaiilor n care se vor utiliza diversele controale

Controale V.B.Net Pictogramele existente n cutia cu instrumente (ToolBox) constituie obiecte programabile. Fiecare asemenea obiect poate formula un subprogram din cadrul aplicaiei, n momentul n care desemneaz un control. Controlul este oricare pictograma din cutia cu instrumente, n momentul n care aceasta este tras (dragat) pe cadrul formularului. Pentru a putea fi translatat pe formular, pictograma este accesat cu mausul i apoi, prin trasare continu, i se formeaz un cadru pe formular. Dup declic, pe formular rmne imaginea controlului selectat anterior. Unele imagini cuprind ntreg chenarul format prin trasarea mausului, altele (de exemplu ComboBox, DateTimePicker s.a.) ocup un spaiu limitat, standardizat de ctre sistem. n sistemul V.B.Net exist 48 de controale posibile. n continuare, ne propunem prezentarea celor mai des utilizate, relevnd, totodat, principalele lor caracteristici. n mod convenional, vom stabili urmtoarea terminologie alturi de semnificaia fiecreia: - prin rol se vor prezenta principalele funcii pe care le pot ndeplini; - prin modul implicit de afiare se vor prezenta elementele specifice de afiare pe suprafaa formularului; - prin principalele proprieti vor fi enunate acele atribute ale obiectului asupra crora intervin, de obicei, utilizatorii. n momentul proiectrii controalelor pe formular, sistemul V.B.net acord denumiri, titularizri i moduri de afiare implicite pentru anumite controale: - Denumirea este numele acordat de sistem fiecrui control, la nivelul proprietii NAME. A fost specificat anterior necesitatea de a acorda o denumire-utilizator fiecrui obiect, n vederea accesrii independente a acestor obiecte, n cadrul unei aplicaii. n cazul n care proiectantul nu personalizeaz astfel controalele pe care le utilizeaz, sistemul le va numerota printr-o denumire implicit. De exemplu: Button1, Button2, etc. - Titulatura corespunde proprietii TEXT, care, n cazul nepersonalizrii controalelor, sistemul o formuleaz identic cu proprietatea NAME (n marea majoritate a cazurilor). n cazul titulaturii, proiectarea controalelor trebuie s aib n vedere facilitile necesare oricrei interfee cu utilizatorul. Aceasta nseamn c este totdeauna util o titulare din partea proiectantului, printr-o formulare ct mai apropiat de scopul pentru care controlul n cauza a fost inclus n formular. De exemplu, un buton de comand a crui scop este de a declana un subprogram prin care se calculeaz impozitul pe salariu, poate rmne cu proprietatea NAME - button1, dar este indicat ca s i se acorde titulatura calcul impozit.

Astfel, n cadrul programului, acest buton de comand va putea fi manipulat prin identificatorul button1, dar accesarea subprogramului de ctre operator va putea fi obinut prin clic (sau alt eveniment) pe acel buton de comand pe suprafaa cruia este nscris titulatura calcul impozit. - Modul de afiare reprezint figura grafic a obiectului pe formular, nsoit de titulatura implicit.
NOT: Atta timp ct unele proprieti corespund mai multor controale, atunci cnd vor fi expuse principalele proprieti ale acestora, vor fi explicitate numai pentru primul caz de utilizare. Pentru urmtoarele cazuri n care mai apare o aceeai proprietate - aceasta se va specifica, fr a i se mai oferi explicaii detaliate. n virtutea celor explicate anterior, nu se vor mai expune explicaii privind proprietile visible, enabled, proprietile de poziionare i dimensionare, cele coloristice, proprietatea tabindex, asupra crora s-au oferit explicaii n paragraful precedent.

n figura 3.10. este prezentat o secven din cutia cu instrumente (ToolBox), avnd n coninut cteva dintre cele 48 de controale utilizate n programarea aplicaiilor de tip Windows - V.B.Net.

Controlul POINTER: Rolul acestuia este de a transfera i/sau de a redimensiona alte controale anterior transpuse n formular. Nu are denumire sau titulatura implicite i nu genereaz nici o form geometric pe formular Controlul LABEL: Rolul sau este de a afia un text solicitat de proiectant. Acest text nu poate fi modificat ulterior, dect prin program. Textele afiate servesc c etichete pentru diversele imagini sau alte controale proiectate pe formular, sau pentru afiarea de mesaje, c rspuns la un eveniment oarecare.

Modul implicit de afiare este o arie trasat de ctre proiectant, coninnd titulatura LABEL1. Principalele proprieti vizeaz posibilitile de ncadrare a unui text sau a unei imagini.

- BORDERSTYLE determin tipul de chenar al etichetei. Chenrul poate fi: - NONE - fr chenar - FIXED SINGLE - chenar dintr-o singur linie; - FIXED 3D - chenar spaial. - AUTOSIZE prin care se poate mri spre dreapta marginea etichetei pentru a cuprinde textul scris pe orizontal. Pentru a mri automat laimea ariei, valoarea proprietii trebuie s fie comutat la TRUE. - FONT stabilete tipul caracterelor care prezint textul inclus n cadrul etichetei i dimensiunea lor. - IMAGE este urmat de puncte de suspensie. Executnd clic pe aceste puncte de suspensie, se va putea opta pentru o imagine propus de sistem, imagine care va fi ncadrat ntre limitele etichetei. - TEXTALIGN ofer nou posibiliti de plasare a textului n cadrul etichetei: TopLeft (n coltul de susstnga), TopCenter (n centru-partea superioar), TopRight (n colul de sus-dreapta), MiddleLeft (n mijlocul vertical al etichetei, cadrat la stnga), MiddleCenter (n mijlocul vertical al etichetei, cadrat central), MiddleRight (n mijlocul vertical al etichetei, cadrat la dreapta), BottomLeft (n colul jos-stnga), BottomCenter (n centru partea inferioar), BottomRight (n colul jos-dreapta). Controlul TEXTBOX: Rolul su este de a afia texte introduse de proiectant sau texte incluse prin program. Casetele de text (TextBox) sunt deosebit de utile n programele care recepioneaz date elementare n timpul execuiei i date rezultate din diverse operaii programate. Modul implicit de afiare este constituit din chenarul trasat pe formular, dar redus iniial de sistem n anumite limite standard. Principalele proprieti: - MULTILINE este proprietatea prin care casetele de text pot nmagazina mai multe rnduri de text. n momentul n care valoarea acestei proprieti este comutat la TRUE, dimensiunile verticale standard ale casetei proiectate se dezvolt la nivelul trasat iniial de ctre proiectant. - TEXTALIGN - are valorile left, center, right. Acestea semnific modul n care va fi cadrat textul nscris n caseta (din marginea stnga, n centru, din marginea dreapt). - BORDERSTYLE - SCROLLBARS este proprietatea prin care sistemul poate aduga bare de derulare casetei de text, atunci cnd, fie pe orizontal, fie pe vertical, textele depesc cadrul iniial al casetei. Opiunile sunt: horizontal, vertical, both, prin care se adaug casetei bare de derulare orizontale, verticale sau ambele. De reinut ca barele de derulare orizontale i ambele bare de derulare nu funcioneaz dect dac proprietatea TextAlign are valoarea left. - MAXLENGTH definete numrul maxim de caractere posibil a fi afiate ntr-o caset de text (ntre 1 32767 caractere). - FONT ofer posibilitatea de a alege tipul caracterelor prin care se vor nscrie textele n cadrul casetei. Controlul GROUPBOX: Rolul su este de a grupa diverse obiecte ntr-o caset. Pentru aceast cuprindere a altor controale, se recomand iniial trasarea cadrului GroupBox i apoi includerea de alte obiecte. Rezultatul nglobrii altor controale este acela c, dorind s se transfere toate obiectele astfel nglobate ntr-o zon a formularului, este suficient mutarea cadrului pentru toate cele pe care le cuprinde.

Modul implicit de afiare este cadrul trasat de proiectant, nsoit de titulatura GroupBox1 (sau oricare numr nepersonalizat). Principalele proprieti nu vizeaz dect pe cele fundamentale (NAME, TEXT, FONT, etc.). Controlul BUTTON: Rolul butoanelor de comand constituie cea mai uzitat form de a genera diverse proceduri. Avnd n vedere simplitatea imaginii i posibilitatea de a intitula divers aceste imagini, utilizatorii prefer proiectarea butoanelor de comand fa de alte declanatoare de proceduri. Fiind destinate n mod direct accesrii procedurilor prin simpla acionare a mausului, butoanele de comand mai sunt numite push button. Modul implicit de afiare este o forma dreptunghiular sau ptrat, conform preferinelor utilizatorului, avnd titulatura Button1 (sau oricare numr nepersonalizat). Principalele proprieti au n vedere, n acest caz, frecvena de utilizare a acestui obiect la nivelul aceluiai formular. Aceasta nseamn pruden n alegerea denumirii i titulaturii diverselor butoane de comand, n sensul c aceste dou proprieti (NAME i TEXT) trebuie s fie inconfunzibile fa de altele, pe de o parte i, pe de alt parte, s fie ct mai sugestive pentru operator. Elementul sugestiv poate necesita, uneori, utilizarea unor etichete care s nsoeasc imaginea butonului de comand, cu toate c, prin proprietatea TEXT se are n vedere o titulatur corespunztoare. - CANCELBUTTON este o proprietate de excepie pentru acest control. Prin aceasta se permite activarea unui alt buton de comand, dac se va aciona tasta ESC. Controlul CHECKBOX: Rolul su consta n validarea unei anumite opiuni (sau a mai multora). Din acest motiv, se mai numete caseta de validare. Opiunile sunt de tipul adevrat/fals, adic accesat/neaccesat. Diversele evenimente sau aciuni din timpul execuiei aplicaiei pot afecta selecia unei casete de validare. Modul implicit de afiare este chenarul trasat de proiectant, n cadrul cruia exist un ptrat cu sau fr bif n interiorul su. Are titulatura CheckBox1. Bifa exist pentru situaia TRUE (accesat) i nu exist pentru cazul invers. Principalele proprieti sunt determinate de starea controlului n program. Testarea strii controlului poate fi utilizat n coninutul unei proceduri, n vederea execuiei unei aciuni. - CHECKED are dou valori posibile: TRUE i FALSE. Valoarea TRUE impune existena bifei n cadrul ptratului, valoarea FALSE elimin bifa. - CHECKSTATE exprim starea casetei de validare i este determinat de valoarea proprietii Checked. Proprietatea CheckState are trei valori: checked, unchecked i indeterminate. Valoarea checked corespunde valorii True a proprietii Checked. Valoarea Unchecked corespunde valorii False a proprietii Checked. Valoarea Indeterminate corespunde valorii True a proprietii Checked, dar n mod selectiv i anume atunci cnd soluia validrii este posibil. - APPEARANCE are dou valori: Normal i Button. Valoarea Normal corespunde afirii casetei de validare ca atare, cu sau fr bif. Valoarea Button transform caseta de validare n imaginea unui buton de comand.

- TABSTOP poate avea valorile TRUE i FALSE. Valoarea True se folosete atunci cnd se dorete activarea n ordine a casetelor de validare prin tasta TAB, caz n care se cere ca, iniial, o singur caset s fie bifat. Controlul RADIOBUTTON: Rolul acestui control este similar celui anterior. Identic casetelor de validare, butonul-radio obine validarea unei anumite opiuni. Diferit de casetele de validare, prin butonele-radio nu se poate accesa dect o singur variant dintre cele proiectate. Din acest motiv aceste butoane se numesc radio, adic n momentul accesrii unui

buton, oricare altul ar fi fost selectat anterior se va deselecta automat (identic butoanelor care servesc schimbrii lungimilor de und radio). Modul implicit de afiare este cel trasat de proiectant, avnd n interior un cercule cu sau fr punct central. Titulatura implicit este RadioButton1. Principalele proprieti sunt identice cu cele ale casetelor de validare: - APPEARANCE - CHECKED - TABSTOP .a. Controlul LISTBOX: Rolul casetei lista este acela de a cuprinde diverse articole opionale, dintre care utilizatorul s poat alege oricare dintre aceste articole. Fiecare articol poate genera o procedur. Oricare articol cuprins n lista este accesibil utilizatorului. Articolele pot fi incluse prin proprietatea Items. Aria rezervat prin proiectare pentru caseta lista poate fi nencptoare pentru numrul de articole solicitat de proiectant. n asemenea caz, sistemul adaug n mod automat o bar de derulare vertical. n cazul n care dimensiunea articolelor depete capacitatea orizontal a ariei prevzut de ctre proiectant, se poate proiecta ataarea unei bare de derulare orizontale. Modul implicit de afiare este aria trasat de ctre proiectant, avnd titulatura iniial ListBox1. Principalele proprieti sunt: - ITEMS: Este proprietatea prin care se pot include iniial articole n caseta-list. Opiunea acestei proprieti este Collection, dup care urmeaz puncte de suspensie. Prin clic pe punctele de suspensie, sistemul

afieaz fereastra String Collection Editor. n aceast fereastr se vor include articolele considerate necesare drept coninut al listei. Articolele incluse sunt considerate implicit ir de caractere. Dup culegerea tuturor articolelor, se execut clic pe butonul OK al ferestrei i toate articolele vor fi preluate n aria casetei-list. n cazul n care numrul articolelor depete capacitatea vertical a ariei casetei, sistemul adaug, n mod automat, o bar de derulare vertical. - HORIZONTALSCROLLBAR este o proprietate cu valori booleene (True/False), implicit este valoarea False. n cazul n care unele articole au un numr de caractere care depesc capacitatea orizontal a casetei, se va comuta valoarea acestei proprieti la True. Astfel, casetei-list i se adaug o bar de derulare orizontal, necesar lecturii articolelor de o lungime mai mare. - MULTICOLUMN ofer posibilitatea de excludere a barei de derulare verticale. Proprietatea are valoarea implicit False. Comutat fiind la valoarea True, sistemul separ, prin coloane, numrul articolelor incluse, fiind necesar numai bara de derulare orizontal, pentru citirea articolelor din coloanele listei. - SCROLLALWAYSVISIBLE ofer posibilitatea de a nu fi vizibile barele de derulare, dect n cazurile n care sunt necesare lecturii articolelor. - SORTED are funcia de a sorta articolele n ordine alfabetic. Pentru aceasta, proprietatea Sorted trebuie comutat la valoarea True. - TABSTOP Controlul COMBOBOX: Rolul acestui control este asemntor cu cel al casetelor-list (ListBox). Casetele combinate (ComboBox) ofer aceleai posibiliti de validare ca i butoanele-radio, dar pot ngloba mai multe alternative, conform

posibilitilor casetelor-list). Deosebirea operaional ntre casetele-list i casetele-combinate const n aceea ca n casetele-list sunt vizibile toate articolele introduse, deosebit de casetele-combinate n care nu se vede dect titlul casetei, articolele fiind ascunse. Din ac Modul implicit de afiare este standardizat de sistem, indiferent de de aria trasat de proiectant. Cadrul se reduce la dimensiunile necesare afirii titulaturii casetei (iniial ComboBox1). n plus, exist o sgeata de derulare vertical, prin care se pot vizualiza articolele incluse n list. Principalele proprieti sunt asemntoare cu cele ale casetelor-list. - ITEMS - proprietate necesar includerii articolelor n list. Includerea are loc prin acelai procedeu specificat anterior: se execut clic pe punctele de suspensie care nsoesc valoarea Collection a proprietii. - SORTED - TABSTOP - .a. Controlul HSCROLLBAR: Rolul controlului este de a figura o bar de derulare orizontal. Scopul acestora este de a parcurge listele cu un cuprins vast de articole. Bara de derulare orizontal are rol similar cu cea din mediul Windows, derulnd pe orizontal elementele nscrise pe o linie editat. Indic poziia pe care o ocup un anumit element afiat n cadrul unei linii de editare sau poziia unei valori ntr-un vector. Aspectul unei bare de derulare orizontal este un dreptunghi (dispus orizontal) al crui limite (dreapta i stnga) sunt delimitate de pointerii de derulare. ntre aceste limite gliseaz un cursor care indic locul ocupat de articolul (elementul) curent n cadrul mulimii care se deruleaz. Modul implicit de afiare const n dimensiunile trasate de ctre proiectant (un dreptunghi), fr a exista o titulatura iniial. Dreptunghiul (considerat un ax) este delimitat de pointerii de derulare ( ), ntre care exist cursorul. Principalele proprieti : - MINIMUM i MAXIMUM au, implicit, valorile 0, respectiv 100. Aceste valori (sau oricare altele specificate de ctre proiectant) determina intervalul ntre care va glisa cursorul (numrarea cazurilor). - LARGECHANGE fixeaz numrul de pai pe care l va executa cursorul ntre cele dou limite ale axului, n funcie de valorile date proprietilor minim i maxim. De exemplu, dac valoarea proprietii Maximum este fixat la 14, dac valoarea proprietii Minimum este fixat la 2 i dac valoarea proprietii LargeChange este fixat la 3, est punct de vedere, casetele-combinate nu ocup spaiu excesiv pe suprafaa formularului. n timpul execuiei, pentru a putea vizualiza articolele incluse n list, se va accesa sgeata de derulare vertical care apare totdeauna n dreapta titulaturii casetei. cursorul va efectua patru pai ntre cele dou extreme, atunci cnd se execut clic pe suprafaa axului (14 - 2 = 12 : 3 = 4). - SMALLCHANGE nu poate depi valoarea lui LargeChange i fixeaz, de asemenea, un astfel de increment, dar acioneaz atunci cnd se execut clic pe pointerii de derulare. - VALUE specific poziia iniial a cursorului pe ax. Valoarea acestei proprieti trebuie s fie cuprins n intervalul valorilor proprietilor SmallChange i LargeChange. Valoarea proprietii Value marcheaz punctul de plecare a cursorului n intervalul proiectat (de exemplu, conform algoritmului precedent, de la pasul 1, adic valoarea 2, de la pasul 2, adic valoarea 5, etc. Controlul VSCROLLBAR: Are aceleai caracteristici eseniale cu controlul HScrollBar, prezentnd, ns, o bar vertical de derulare. Controlul DATETIMEPICKER: Rolul este de a prezenta data curent.

Modul implicit de afiare este standard i cuprinde data curent (ziua - luna - data - anul). n momentul execuiei, afieaz (prin derulare vertical) calendarul lunii curente. n partea superioar a imaginii exist pointeri de derulare orizontal. Prin accesarea acestora sistemul afieaz calendarul lunilor urmtoare sau a celor precedente. Principalele proprieti sunt specifice datelor calendaristice: - MAXDATE - implicit data calendaristic 12/31/9998 - MINDATE - implicit data calendaristic 1/1/1753 - VALUE - data calendaristic curent. Controlul MONTHCALENDAR: Este similar controlului precedent, cu excepia faptului c afieaz ntreaga arie trasat de ctre proiectant. n cadrul acestei arii afieaz calendarul lunar curent. Proprietile sunt identice i, de asemenea, pointerii de derulare orizontal, prin care se obin calendarele lunilor anterioare i viitoare.
NOT: Reamintim c proprietile expuse n acest paragraf nu epuizeaz ntreg arsenalul controalelor. Pe de alt parte, trebuie avute n vedere, n primul rnd, proprietile cu caracter general, specificate n cadrul &.3.2.1.

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