Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Array come si fa' ?

Allora il problema del giorno č:
Posso usare una Array ?
e come si dichiara e usa ?
Mi spiego ho circa 30 caselle di testo in qui devo scrivere delle cose a
alla riapertura le voglio ritrovare lě,
senza record.
Nel programmino per testare se ero capace di farlo con sole 4 textbox ho
fatto cosě:
in un modulo ho dichiarato le variabili (copiando da un'altro programma
"Agenda telefonica"):
Public CR As Bin
Public FullFileName As String
Public FileNum As Integer
Public Const FILENAME = "Bin.DAT"
Type Bin
    Text1 As Long
        Text2 As Long
        Text3 As Long
        Text4 As Long
End Type
e su Form_Load :
' Apre il file
Open FullFileName For Random As #FileNum Len = Len(CR)
' Legge i dati relativi al primo ed unico record
Get #FileNum, 1, CR
' copia i dati da file e li immette nelle textbox
    Text1.Text = CR.Text1
    Text2.Text = CR.Text2
    Text3.Text = CR.Text3
    Text4.Text = CR.Text4
End Sub
Non fate caso se qualcosa non č "Ortodossa" o non č al posto suo, ho
trasformato un programmino esistente per le mie esigenze, comunque tutto
funziona, ora dato che mi servono come ho detto 30 text non vorrei ripetere
quello che ho fatto con 4 text per tutte e 30.
ho provato a fare un ciclo for  del tipo:
for i = 1 to 4
    text(i).text = CR.Text(i)
next for
ma mi dice che non č possibile.
come posso fare?
approposito sapete che cosa č CR e se posso eliminarlo visto che non ho
record, ma solo un testo per ogni casella?
Grazie, spero di non essermi dilungato troppo,
Tuareg

Non ho aveto modo di testarlo ma sicuramente un errore e qui :
NON
Public CR As Bin
Public FullFileName As String
Public FileNum As Integer
Public Const FILENAME = "Bin.DAT"
Type Bin
    Text1 As Long
        Text2 As Long
        Text3 As Long
        Text4 As Long
End Type
MA
Type Bin
    Text1 As Long
        Text2 As Long
        Text3 As Long
        Text4 As Long
End Type
Public CR As Bin
Public FullFileName As String
Public FileNum As Integer
Public Const FILENAME = "Bin.DAT"
LongBlade

approposito sapete che cosa è CR e se posso eliminarlo visto che non ho


Prova ad esaminare questo esempio ( a volte un po' di codice vale molto più
delle parole)
Text1 è una textbox con la proprietà index=0 : solo così puoi creare matrici
di controlli da codice.
Sezione Generale del Form---------------------
Const Ntext = 30 'Numero di textbox
Dim Testo As String * 30 'Tipo di dati da salvare o da caricare
Const File = "c:\documenti\pippo.dat" 'Nome del File
Evento Load del form-----------------
Private Sub Form_Load()
Dim nfile As Long
nfile = FreeFile
Open File For Random As #nfile Len = Len(Testo)
For f = 1 To Ntext - 1
If f > Text1.Count - 1 Then
Load Text1(f) 'qui crei l'array di controlli che dicevi
End If
Text1(f).Move 0, Text1(f - 1).Top + Text1(f - 1).Height
Get #nfile, , Testo
Text1(f).Text = Testo
Text1(f).Visible = True
Next f
Close
End Sub
per salvare il testo delle textbox (io ho usato per prova l'evento click di
un command button)
Private Sub Command1_Click()
Dim nfile As Long
nfile = FreeFile
Open File For Random As #nfile Len = Len(Testo)
For f = 1 To Ntext - 1
Testo = Text1(f).Text
Put #nfile, , Testo
Next f
Close
End Sub
Spero di esserti stato di aiuto. In caso di problemi non esitare a
contattarmi
Ciao
Daniele