allora...
x grumpy:
Ho ripulito un po il codice.
ho modificato i nomi dei check per assimilarli a quelli dei frame.
usare tante variabili è un mio difetto, ma cmq quelle che vedi sono rimaste li per le prove che facevo.
x andrea:
non ho capito bene l'uso che fai del doevents. Ma non mi funziona lo stesso.
Vi posto il codice:
codice:
Private Sub ImpaginaFrame()
'Coordinate dei FRAME DATI
Dim coordx As Integer
Dim coordy As Integer
Dim i As Integer
Dim c As Integer
Dim ContMax As Integer
'La variabile 'Stato' è definita all'inizio del modulo con stato (1 to 5) as boolean
'Coordinate dei FRAME (in twips)
coordx = 10440
coordy = 1200
'Coordinate X e Y
For i = 1 To 5
FrameDati(i).Left = coordx
Next i
FrameDati(1).Top = 1200
List1.Clear
'Imposta la visibilità dei frame a true
For i = 1 To 5
FrameDati(i).Visible = True
List1.AddItem "Frame(" & i & ") = " & FrameDati(i).Visible
Next i
List1.AddItem ""
'Visualizza in list1
For i = 1 To 5
List1.AddItem "Frame(" & i & ") = " & FrameDati(i).Visible
Next i
'Imposta le variabili stato(i) a seconda dei check in GraficoCircuito
For i = 1 To 5
If frmGraficoCircuito.Check(i).Value = 1 Then
FrameDati(i).Visible = True
stato(i) = True
Else
FrameDati(i).Visible = False
stato(i) = False
End If
Next i
'Sposta i frame in cascata a seconda di quelli visibili / invisibili
For i = 1 To 5 'numero di valori
If stato(i) = True Then
FrameDati(i).Top = coordy 'Assegna al form interessato la coordinata piu alta
FrameDati(i).Visible = True 'Visualizza il form interessato
coordy = coordy + FrameDati(i).Height + 20 'imposta il Coordy successivo
Else
FrameDati(i).Visible = False 'Visibilità
End If
Next i
End Sub
ma, ora succede una cosa. Non so se sono io. bah!!
allora:
leggendo questa parte di codice succede che impostando a TRUE la visibilità dei frame, e visualizzando subito dopo la stessa proprietà, il prog. ritorna FALSE !!!!
codice:
'Imposta la visibilità dei frame a true
For i = 1 To 5
FrameDati(i).Visible = True
List1.AddItem "Frame(" & i & ") = " & FrameDati(i).Visible
Next i
List1.AddItem ""
Quindi, al problema...se ne è aggiunto un altro !!! eheheh.. bella sta cosa !!!!