Newsgroup: it.comp.lang.visual-basic
Titolo: Spostarmi su un campo alla chiusura di un form

Salve a tutto il NG
come devo fare per posizionarmi su un campo di una form, all'uscita di 
un'altra form che la precedente ha aperto attraverso un bottone? 

 un'altra form che la precedente ha aperto attraverso un bottone?
Nell'evento Unload della form che si chiude:
Private Sub Form_Unload(Cancel As Integer)
Form1.Text2.SetFocus
End Sub
Ave
giuseppeD
---
CCR 

 End Sub
mi da questo errore proprio sulla riga Form1.Text2.SetFocus dell'unload 
della form che si chiude:
Errore di run-time '5'
Chiamata di routine o argomento non valido 

 ha scritto nel messaggio 
news:4454c64f$0$36931$4faf...@reader3.news.tin.it...

Ma la Form1 è aperta ?
Ave
giuseppeD
---
CCR 

> Ma la Form1 è aperta ?
si si
dalla form1 apro la form2 in questo modo
form2.show vbmodal
in modo da avere la form1 bloccata
potrebbe essere questo il problema? 

 ha scritto nel messaggio 
news:4454d2e8$0$36924$4faf...@reader3.news.tin.it...

Si
Comunque il seguente da me funziona
Private Sub Command1_Click()
Unload Me


 End Sub
Facendo cosě funziona perfettamente, ed č proprio quello che volevo
Perň se chiudo la form dalla 'X' in alto a sinistra, come posso fare per 
avere lo stesso risultato e non l'errore? 

 ha scritto nel messaggio 
news:44550ea7$0$36936$4faf...@reader3.news.tin.it...

Se ho capito, per eseguire il
 Form1.Text2.SetFocus
l'esecuzione deve  essere successiva al completamento dell'evento
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
 Dim x As Integer
 x = UnloadMode
 Debug.Print (x)
 If x = 0 Then
        Cancel = True
 End If
End Sub
se il
Form1.Text2.SetFocus
viene chiamato dopo il
End Sub
viene eseguito, altrimente genera un errore.
L'unica che mi viene in mente č annullare la chiusura che avviene tramite la 
X,
quindi obbligare l'utente ad utilizzare un pulsante
Ave
giuseppeD
---
CCR 

 End Sub
Fatto in questo modo e va bene
Anche se penavo a qualche evento che si genera dopo l'Unload, in modo da 
seguire la stessa logica di
Private Sub Command1_Click()
Unload Me
Form1.Text2.SetFocus
End Sub
che il Setfocus viene eseguito fuori da Unload 

 seguire la stessa logica di
Ma infatti state facendo un casino immondo.
1) Se apri la seconda form con vbModal, il codice della prima form si blocca 
sull'istruzione di Open. Per cui il posto piu' ovvio (e piu' giusto) per 
ridare il focus al campo e' dopo la Open.
2) La tua form1 ha un'evento Activate che, indovina indovinello...serve 
proprio a fare qualcosa quando la form viene attivata.

 proprio a fare qualcosa quando la form viene attivata.
Ho due form aperti, form1 e form2
da form1 apro form3 in vbModal
Chiudo form3 dalla X e voglio che il focus vada in una casella della form2.
Come eseguo ?
Ave
giuseppeD
---
CCR 

 Come eseguo ?
sub form1_sticazzicommand_click()
form3.open vbmodal
form2.casella.setfocus
end sub
Faccio fatica anche a ritenerlo elementare, e' che non mi viene una parola 
per indicare quanto sia infinitesimamente banale.

 ha scritto nel messaggio 
news:0dn5g.104520$PR2.1...@twister2.libero.it...

Nulla da eccepire.
Certo in .NET è di altro effetto ..........
Ave
giuseppeD
---
CCR 

 end sub
Fatto
Grazie mille