Newsgroup: it.comp.lang.visual-basic
Titolo: form 1 form2

ciao a tutti
sono capitato in un problema che credo sia un classico:
nel form1, che richiama il form2, c'č un text che devo riempire con un
valore inserito nella form2(nell'esempio lo gestisco perň da form1).
Dopo aver letto tutto il possibile nei siti specializzati e google, ho
fatto cosě:
'in form1 creo un mio metodo
public sub passaggio()
    textbox1.text = "nello"
end sub
'ed un button
dim f2 as new form2
f2.show
'in form2 / evento button
dim f1 as new form1()
f1.passaggio
me.hide
Perň la text su form1 non si aggiorna, anche se la sub 'passaggio'
viene processata regolarmente, come posso rimediare??
grazie per le risposte.
nello

f1.passaggio
poichč f1 č una nuova istanza di form1 non la form1 a cui tu vuoi
passare il valore sono due oggetti diversi anche se simili.
Ciao Roberto
Caminamo muru muru e attenti e cannalati

 Scusa per prima nello.
Vista la scarsità nel mio messaggio precedente,  ti allego un pochino
di punteggiatura
. . . , , : ; 
Posizionala dove meglio di aggrada ciao :-))))


 
Questo è vero ma è l'unico modo per poter accedere a form1 da form2,
anche se il mio risultato non è raggiunto.
Mi puoi dare qualche altra indicazione?
grazie
nello
p.s. scusa ma ho dimenticato di dirti che lavoro con .net :-(((

 passargli nessun valore.
Uno straccio di libro vogliamo studiarcelo o no?
-- 
ciao, hal

p.s. scusa ma ho dimenticato di dirti che lavoro con .net :-(((
Azz. allora passo, io parlavo del VB6,  col net non vado molto
d'accordo!!


> Uno straccio di libro vogliamo studiarcelo o no?
la battuta l'hai fatta (a proposito,  mi riprometto di trattare
l'argomento
"io che conosco la materia prendo per i fondelli tutti quelli che
postano domande che per me sono sceme"
in un altro post a breve),
ma la risposta/indicazione per la soluzione del problema?
Ho capito che siamo in presenza di classi, che non lavoriamo
direttamanete con esse ma che dobbiamo "passare" attraverso delle
istanze.
Ho capito che una delle cose che si possono fare è quella di creare
una proprietà del form1, in modo da poter essere visulizzata da tutta
l'applicazione, fatto stà che se io dal form2 istanzio la form1 e gli
valorizzo la proprietà, la textbox di form1 non viene aggiornata con
il nuovo valore.
in altri termini:
'in form1
Public Property Name() As String
    Get
        Return TextBox1.Text
    End Get
    Set(ByVal Value As String)
        TextBox1.Text = Value
    End Set
End Property
'in form2 dopo averla richiamata 
'evento button1_click
Dim f1 As New Form1()
f1.Name = "nello"
me.hide
ma ancora non và, cioè la text di form1 non visualizza il mio nome. 
dove stò sbagliando secondo voi?
grazie
per le risposte
nello

 dove stò sbagliando secondo voi?
Nel rimandare sempre la lettura del famoso libro :-(
Scusa se insisto, ma qui mancano proprio i fondamentali.
Mi sembra di essere all'asilo... :-(
-- 
ciao, hal

 ma ancora non và, cioè la text di form1 non visualizza il mio nome.
il nocciolo della questione e' nel codice che non c'e', cioe' quello del
"dopo averla richiamata"
ci sono ottime possibilita' che per aprire Form1 tu abbia usato qualcosa di 
simile a
Dim f1 As New Form1()
f1.Show
'ecc.
dove l'uso della parola chiave New ha creato la prima istanza, e il suo 
riutilizzo in Button1_Click() ha creato la seconda, che vive di vita 
propria.
Ergo, la soluzione nuda e cruda e' semplice (in realta' ce ne sono molte, ma 
il concetto e' sempre quello di far riferimento all'istanza giusta) ma per 
andare avanti ti serve un letta ad un minimo di documentazione base sulla 
programmazione ad oggetti... persino qualcosa riferito alle classi in VB6, 
che pure e' un'altro mondo, e' sufficente per cominciare a capire.
Ciao
-- 
Luca Dormio - 
luca....@tin.it
________________________________
"Marty, non stai ragionando in maniera quadridimensionale"
Dr. Emmett L. Brown

 programmazione ad oggetti... 
ti assicuro che di libri/manuali/documenti tecnici ne ho letti molti,
il problema è che l'argomento è molto vasto, e chi utilizza .net per
diletto
(quindi dedica il tempo che può ) spesso si perde nelle tante cose che
ci sono da imparare.


 ci sono da imparare.
Capisco, ma sfortunatamente, a differenza di quanto succedeva con VB6 che 
per questo veniva preso spesso sottogamba, in 
VB.NET
 anche per fare cose 
semplici bisogna subito prendere dimestichezza con concetti di 
programmazione "spessi", che e' un po' difficile sviscerare bene qui sul NG


> f2.FormChiamante = Me 'passi il riferimento all'istanza gia' attiva
mo' sssi.
questo era il pezzo del puzzle che mi mancava. Adesso passo il valore
al form1 che si è aperto in avvio soluzione e non ad altri.
Ti ringrazio moltissimo per la spiegazione che mi hai dato.
nello
------------------------------------
Solo il saggio sà qunt'è ignorante
------------------------------------