Oppure

Loading
20/12/11 9:54
lucas95
B.giorno ragazzi,
sto provando a fare la stampa della form. Nella mia form ho 7 commandbutton che durante la stampa non devono essere visualizzati. Ho scritto così:

Private Sub Stampa_Click(Index As Integer)
cmd1.Visible = False
cmd2.Visible = False
cmd3.Visible = False
cmd4.Visible = False
cmd5.Visible = False
cmd6.Visible = False
cmd7.Visible = False

Form1.PrintForm

cmd1.Visible = True
cmd2.Visible = True
cmd3.Visible = True
cmd4.Visible = True
cmd5.Visible = True
cmd6.Visible = True
cmd7.Visible = True
End Sub


Invece di scrivere così...cioè attivare e poi disattivare i CommandButton singolarmente...è possibile creare un ciclo o altro che parte da 1 e arrivi a 7 per prima disattivare e poi attivare i CommandButton? Lo dico nel caso avessi più Command o Text o altro e dovrei fare una cosa del genere! :asd:


Grazie!


P.S.
Spero di essermi spiegato!
Ultima modifica effettuata da lucas95 20/12/11 9:55
aaa
20/12/11 10:55
ampeg
la cosa più semplice è usare i command come array di controlli, dandogli a tutti lo stesso nome e variando la proprietà index partendo da index = 0 a index = n .. in modo crescente

poi si fa un ciclo in cui si usa la proprieta count del controllo per l'iterazione

ad esempio

for i = 0 to command.count -1
command(i).visible = [false|true]
next i

se i controlli sono già disegnati prima devi impostare l'index per ognuno e poi gli cambi il nome assegnando lo stesso per tutti i command

comunque sono proprio le basi del vb

aaa
20/12/11 19:22
lucas95
Si grazie! :k:

Ecco come ho fatto:

Dim i As Integer
For i = 0 To cmdTutti.Count - 1
cmdTutti(i).Visible = False
Next i
Form1.PrintForm
For i = 0 To cmdTutti.Count - 1
cmdTutti(i).Visible = True
Next i
aaa