Newsgroup: it.comp.lang.visual-basic
Titolo: passaggio parametri

ciao a tutti,
scusate labanalità della domanda, ma vorrei schiarrirmi le idee.
Posso passare una variabile di tipo locale come parametro ad un modulo di VB
come per esempio FORM_LOAD()?
Vorrei evitare di creare centinaia di variabili pubbliche per passare i
valori tra i form
mi spiego
ho una form contenente una MSFG e do la possibilita' all'utente di cliccare
una riga per scegliere la visualizzazione dei dati del cliente selezionato.
Ora come ora creo una variabile pubblica di tipo appropriato e la uso per
memorizzare il valore...
ma vorrei evitarlo..sia per comodita' mia sia per evitare di dover tutte le
volte rimanipolare la stessa variabile con la conseguenza di sbagliare
qualcosa o di dimenticarmi di rivalorizzarla.
Graize a tutti
Ciao
Emanuele

 qualcosa o di dimenticarmi di rivalorizzarla.
Io faccio esattamente cosě! Una variabile globale (stringa) nella quale
accodare piů informazioni, opportunamente Tag-gate per riconoscerle con
certezza. Sicuramente si puň fare in altro modo, ma per me č troppo comodo
cosě.

 valori tra i form
[SNIP]
Argomento sempre molto gettonato, guarda anche i vecchi post
Form_load e' un evento, e' come tale non e' possibile aggiungere parametri
personalizzati, nulla ti vieta pero' di definire nelle tue form proprieta' o
metodi pubblici per poter passare i dati che ti servono; puoi a questo punto
memorizzare i valori in una o piu' variabili dichiarate a livello di form,
per l'utilizzo durante il load o dove meglio credi... per esempio:
'Nelle dichiarazioni di Form1
Private MyData As String
Public Sub InitData(ByVal Param1 As String)
'N.B. qui evita sempre di fare riferimento a proprieta' e controlli
'della form per non rischiare che venga effettuato un caricamento implicito
'(e che quindi venga scatenato l'evento Load in maniera non controllata)
'In linea di massima limitati a salvare i parametri nelle tue veriabili e
'null'altro.
MyData = Param1
End Sub
Sub Form_Load
Me.Caption = "Dati aggiuntivi: " & MyData
End Sub
Dall'esterno la chiamata sara' semplicemente qualcosa del genere
Form1.InitData "prova"
'se hai seguito le indicazioni piu' sopra, la form a questo punto
'non e' ancora caricata, lo facciamo ora invocando 'Load Form1' o
direttamente
Form1.Show
Ciao
--
Luca Dormio - 
luca....@tin.it
________________________________
"Marty, non stai ragionando in maniera quadridimensionale"
Dr. Emmett L. Brown

 ha scritto nel messaggio
news:9QdSa.16387$sj6.3...@tornado.fastwebnet.it...

Grazie delle dritte
Emanuele

 Grazie delle dritte
pessimo quote, cmq vorrei aggiungere che anche io a volte (rare) faccio come
fai tu, ad esempio memorizzo RecordCorrente in una variabile pubblica !
Pero' lo faccio avendo pieno comando sulla sua valorizzazione , infatti in
soli 3 punti viene valorizzata, e quando viene chiamata cmq viene testata,
appunto per prevenire errori !
In altri casi preferisco usare il metodo di passare direttamente io il
valore alla funzione,
es:
...
    recordCorrente = 10
...
    MostraDettagli recordCorrente
    ColoraRiga recordCorrente
...
-- 
<Gigio2K>
Sito Comune
Nokia -> I.T.H.N. -> 
http://www.ithn.it/
VB -> I.C.L.VB -> 
http://www.it-lang-vb.net/

 ha scritto nel messaggio
news:hmmSa.189158$lK4.5...@twister1.libero.it...

scusa gigio2k...ma spiegami cosa c'e' di sbagliato nel mettere un
ringraziamento... che lo metto sopra o lo metto sotto al messaggio originale
fa poca differenza dato che in un ringraziamento non c'e' proprio niente da
capire....
Comunque grazie delle spiegazioni che mi hai mandato, provero a usarle il
prima possibile.
 Emanuele

 usarle il prima possibile.
Prego !



 Vediamo...potresti creare un sorta di nuovo metodo "Load" sulla form con i
parametri che ti interessano.
Cioe scrivi nella sezione general del form questo :
  Public Sub Load(arg1[,arg2[,...[,argn]]])
  ' Qui puoi mettere un Me.Show se ti serve
 
  End Sub
Tanto il load te lo fa in automatico quando chiamerai
  FormX.Load(...)
da programma.
Ciao
--------------------------------
Inviato via 
http://usenet.libero.it

 FormX.Load(...)
 
   Ops...
   Call FormX.Load(...,...,...)
     oppure
   FormX.Load ...,...,...


Grazie gigio...
dimmi se cosi' e' meglio.
ps: non si finisce mai di imparare ehehehehhe :)
[cut]

Graize anche a te!
Emanuele
[cut]