archiviazione dati

gestione file con record a lunghezza costante, su colonna o unica riga

per vedere archi3b.ppt

Option Explicit

Public Type persona
cognome As String * 20
nome As String * 20
indirizzo As String * 20
cap As String * 5
città As String * 20
telefono As String * 20
End Type


Private Sub apri_Click()
Open "rubri.dat" For Random As #1 Len = 105
codicetxt.SetFocus
End Sub

Private Sub chiudi_Click()
Close #1
End Sub


Private Sub CommandButton2_Click()
Dim p As persona
Get #1, codicetxt, p
Call preleva1(p)
codicetxt.Text = ""
End Sub



Private Sub leggi_Click()
Dim p As persona
Get #1, codicetxt, p
Call preleva(p)
codicetxt.Text = ""
End Sub

Private Sub leggicambia_Click()
Dim p As persona
Get #1, codicetxt, p
Call preleva(p)
End Sub

Private Sub modifica_Click()
Dim p As persona
Call registra(p)
Put #1, codicetxt, p

End Sub




Private Sub registra(ByRef p As persona)
p.cognome = cognometxt
p.nome = nometxt
p.indirizzo = indirizzotxt
p.cap = captxt
p.città = cittàtxt
p.telefono = Telefonotxt
End Sub

Private Sub preleva(p As persona)
Frame1.Visible = True
Frame2.Visible = True
cognometxt = p.cognome
nometxt = p.nome
indirizzotxt = p.indirizzo
captxt = p.cap
cittàtxt = p.città
Telefonotxt = p.telefono
codicetxt.SetFocus
End Sub

Private Sub preleva1(p As persona)
Frame1.Visible = True
Frame2.Visible = True
TextBox1 = p.cognome
TextBox2 = p.nome
TextBox3 = p.indirizzo
TextBox4 = p.cap
TextBox5 = p.città
TextBox6 = p.telefono
Rem codicetxt.SetFocus
End Sub