Newsgroup: it.comp.lang.visual-basic
Titolo: Variabile Globale?

Ho un piccolo problema...
ho una variabile intera "a" sotto, ad esempio,
Private Sub Command1_click()
...
...
..
End Sub
Alla fine delle operazioni dentro "Command1_click" la variabile, che prima
aveva valore "7", ha valore "10".
Questo valore puo' variare... ovvero non sono sicuro che alla fine valga 10,
puo'
valere 11 etc...
dunque mi serve portare il valore di questa variabile su, sempre ad
esempio...
Private Sub TCP1_DataArrival()
...
...
...
End Sub
magari lasciandola come "a" o anche cambiando nome di variabile ma non il
risultato.
C'e' un metodo per poterlo fare??
Grazie e scusate la domanda sciocca
            -=NT=-
www.spippolatori.com

Imposta la variabile a come globale in un modulo:
Global a

 Global a
c'ho gia' provato ma non funziona... il valore che poi prendo dal modulo e'
sempre quello che gli ho dato nel modulo...
invece io voglio che
parta:
a = 0
dopo il ciclo:
a = n
e viene registrato nel modulo
poi la chiamo da qualche altra parte nel form
e
a = n --> deve essere il valore del "dopo il ciclo"
:-\
spero di essermi spiegato bene
            -=NT=-
www.spippolatori.com

>spero di essermi spiegato bene
Si ho capito, ma mi sembra strano!
A regola, quando a diventa uguale a n, dovrebbe rimanere n.
Sei sicuro che da qualche parte dopo il ciclo non ci sia una assegnazione
che ti riporta a al valore originale?

 che ti riporta a al valore originale?
Dovrei ricreare il codice... se qualcuno risponde alla mia domanda sull'api
degli id dei processi :-))
            -=NT=-
www.spippolatori.com

All'interno della stessa form se dichiari un a variabile all'inizio questa è
visibile in tutte le procedure. Senno dichiari una variabile Global in un
modulo
Global a As Integer
spero di esserti stato di aiuto
Bye Bye

 che ti riporta a al valore originale?
Credo d'aver sbagliato io... ecco il codice che faccio
Form
Private Sub Command1_Click()
z = 1
Text1.Text = a + z
End Sub
Private Sub Form_Load()
a = 0
b = 1
c = 2
a = b + c
Text1.Text = Text1.Text & a
End Sub
*********
Questo e' il form... ma penso sia scorrettissimo :-))
            -=NT=-
www.spippolatori.com

Quando il form si carica, a assume il valore 3.
Alla pressione del pulsante, si aggiorna solo la textbox (mostrerà a+z e
cioè 4), ma a resta 3.
Se vuoi aggiornare anche la a, devi scrivere:
z=1
a=a+z
text1.text=a


 text1.text=a
"a" cosi' diventa 4... giusto???
allora io voglio il nuovo valore di "a" non piu' su Form_Load ma su un altra
funzione... ad esempio
Private Sub NighTiger()
a = 20% * a
MsgBox, etc etc etc, "il tuo importo e' " a
End Sub
Questo e' solamente un esempio... cmq quello che voglio fare io e'
riportarmi il valore di "a" in un altra Sub
Grazie per l'attenzione
            -=NT=-
www.spippolatori.com

riportarmi il valore di "a" in un altra S
Ti consiglio di creare in ogni caso un modulo.bas e mettere in sub
main() le inizializzazioni di tutte le variabili globali e non in 
form_load
E poi da qualunque sub che gestisca il valore, se deve modificare il
valore di quella variabile, deve restituire il valore modificato alla
variabile globale.
Dipende da cosa vuoi fare con quella variabile, perche' puoi prendere
e usarla per altre cose, senza modificare ( un po come hai fatto tu). 
Sidewinder
---------------------------------------------------
"C'e' una luce in fondo al tunnel....
   ... E' Tux con il casco da minatore!"




Grazie a tutti ;-)
            -=NT=-
www.spippolatori.com