You are on page 1of 4

Public Class Form1 Dim eu As Persoana 'Definesc un tablou dinamic 'Dim Persoane() As Persoana 'Indexul Dim I As Integer = 0 Dim

p As Persoana Dim aPersoane As New ArrayList() Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click eu = New Persoana() eu.Nume = txtNume.Text eu.Prenume = txtPrenume.Text eu.CNP = txtCNP.Text eu.Sex = txtSex.Text 'eu.DataNasterii = Now() 'eu.DataNasterii = CDate(txtDataN.Text) eu.DataNasterii = CDate(DateTimePicker1.Value) End Sub Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click MessageBox.Show(eu.Nume & " " & eu.Prenume & ControlChars.CrLf & eu.CNP & ControlChars.CrLf & eu.Sex & " " & eu.DataNasterii) End Sub Private Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button3.Click ' Genez obiectul p de tip persoana MessageBox.Show("Generez un nou obiect") p = New Persoana() ' Incarc datele in obiectul p MessageBox.Show("Incarc datele in nou obiect") p.Nume = txtNume.Text p.Prenume = txtPrenume.Text p.CNP = txtCNP.Text p.Sex = txtSex.Text p.DataNasterii = CDate(txtDataN.Text) ' Adaug obiectul in lista MessageBox.Show("Adaug obiectul in lista") I = aPersoane.Add(p) MessageBox.Show("Afisez indexul la care s-a incarcat obiectul") MessageBox.Show("Indexul la care s-a memorat: " & I) End Sub Private Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.Click ' Parcurg lista element cu element MessageBox.Show("Parcurg lista si afisez continutul fiecarui element") For Each element In aPersoane

With element MessageBox.Show(.Nume & " " & .Prenume & ControlChars.CrLf & .CNP & ControlChars.CrLf & .Sex & " " & .DataNasterii) End With Next 'Caracteristicile (proprietatile)listei MessageBox.Show("Afisez proprietatile listei") MessageBox.Show("Capacitatea: " & aPersoane.Capacity) MessageBox.Show("Nr. de elemente incarcate: " & aPersoane.Count) 'Sterg o celula a listei celula din vector (prima celula cu indexul 0) MessageBox.Show("Sterg celula de index 0") aPersoane.RemoveAt(0) ' Verific ca s-a sters vom avea o eroare MessageBox.Show("Constatam ca prima persoana introdusa, cea de index 0 lipseste ") For Each element In aPersoane With element MessageBox.Show(.Nume & " " & .Prenume & ControlChars.CrLf & .CNP & ControlChars.CrLf & .Sex & " " & .DataNasterii) End With Next 'Caracteristicile (proprietatile)listei MessageBox.Show("Afisez proprietatile noii liste si constatam ca s-a facut reindexarea") MessageBox.Show("Capacitatea: " & aPersoane.Capacity) MessageBox.Show("Nr. de elemente incarcate: " & aPersoane.Count) End Sub End Class Public Class Persoana 'Definire variabile (atribute)locale Private m_sNume As String Private m_sPrenume As String Private m_sCNP As String Private m_cSex As Char Private m_dDataNasterii As Date 'Definire proprieti Public Property Nume() As String Get Nume = m_sNume End Get Set(ByVal value As String) m_sNume = value End Set End Property Public Property Prenume() As String Get Prenume = m_sPrenume End Get Set(ByVal value As String) m_sPrenume = value End Set End Property Public Property CNP() As String Get

CNP = m_sCNP End Get Set(ByVal value As String) Dim iSteag As Integer iSteag = 0 ' steag alb (operaie valid) 'Verific dac prima cifr este 1 sau 2 If value.Substring(0, 1) = "1" Or value.Substring(0, 1) = "2" Then Else iSteag = 1 ' steag albastru (operaie invalid) End If 'Verific dac lungimea este 13 If value.Length = 13 Then Else iSteag = 1 ' steag albastru (operaie invalid) End If If iSteag = 0 Then 'valoarea este corecta m_sCNP = value Else 'valoarea este incorecta MessageBox.Show("CNP incorect - prima cifra diferita de 1 sau 2 sau lungimea diferita de 13") iSteag = 0 End If End Set End Property Public Property Sex() As Char Get Sex = m_cSex End Get Set(ByVal value As Char) If (value = "M" Or value = "m" Or value = "F" Or value = "f") Then m_cSex = Char.ToUpper(value) Else MessageBox.Show("Sex diferit de M sau F") End If End Set End Property Public Property DataNasterii() As Date Get DataNasterii = m_dDataNasterii End Get Set(ByVal value As Date) If value <= Now() Then m_dDataNasterii = value Else MessageBox.Show("Data nasterii incorecta") End If End Set End Property 'Definire constructori 'Definire alte metode (alte operaii)

End Class

You might also like