Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - ciclo for
Forum - Visual Basic 6 - ciclo for

Avatar
mash_mash (Normal User)
Expert


Messaggi: 230
Iscritto: 25/07/2007

Segnala al moderatore
Postato alle 16:29
Venerdì, 05/06/2009
Ciao a tutti quanti.
Problema : in un form ho circa 10 checkbox , con un ciclo for vorrei che all'evento load del form o tramite un pulsante impostare il valore delle chk a FALSE.
MI DITE DOVE SBAGLIO :

Private Sub UserForm_load()      - oppure -  Private Sub cmd1_Click()

Dim CheckBox As Object
Dim x As Integer
For x = 0 To 10 Step 1
CheckBox(x).Value = False
Next x
End Sub
'
Ho provato anche con un ciclo for each next , ma il risultato non cambia
Private Sub UserForm_load()      - oppure -  Private Sub cmd1_Click()
Dim CheckBox As Object
For each CheckBox in Application.Form
CheckBox(x).Value = False
Next
End Sub



PM Quote
Avatar
antometal (Member)
Guru


Messaggi: 691
Iscritto: 12/09/2007

Segnala al moderatore
Postato alle 16:37
Venerdì, 05/06/2009
non ne sono sicuro, ma penso che l' errore sia nell' assegnazione del FALSE
le chkbox possono assumere 3 valori: checked, unchecked e disable(se nn sbaglio), che corrispondono a 0, 1, 2 (non so in che ordine)
guarda nella proprietà di una chkbox e vedi che valore assume quando è unchecked e poi assegni quel numero al posto del FALSE

scusa l' insicurezza e l' imprecisione, non ho vb sotto mano

ps. non è un errore, ma "step 1" è di default, puoi anche ometterlo

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 19:29
Venerdì, 05/06/2009
stai attento che 0 to 10 ne conti 11....fai 0 to 9

Codice sorgente - presumibilmente VB.NET

  1. for x = 0 to 9
  2.     if not checkbox(x).value = uncheked then  
  3.        checkbox(x).value = uncheked
  4.     end if
  5.  next x


Ultima modifica effettuata da il 05/06/2009 alle 19:33
PM Quote