e rieccomi ad assilarvi (ahahah) vorrei chiudere il sottoform per non sovrapporre due sottoform uguali ho gia provato con due stringhe
sottoform2.hide() mi da errore..
form2.hide() non funziona
allora aiutino *-*
Messaggi: 1,021
Discussioni: 28
Thanks Received:
0 in 0 posts
Thanks Given: 0
Thanks Received:
0 in 0 posts
Thanks Given: 0
Registrato: May 2010
Reputazione:
9
07-09-2010, 10:53 PM
(Questo messaggio è stato modificato l'ultima volta il: 07-09-2010, 10:55 PM da steve.)
quando apri un sottoform che deve andare al posto di un altro metti nel Button:
nomeForm.Close()
in caso il button è dentro al form che si deve chiudere:
me.Close()
o volendo puoi mettere nomeForm.Close() sotto Private Sub nomeFormDaTenereAperto_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
C'è una soluzione più che semplice.
Metti la dichiarazione della variabile per la sottoform, sotto a: Public Class Form1.
Ora nel button che servirà per chiudere la sottoform, devi usare questo codice: NomeDellaVariabile.Hide().
Faccio un esempio:
Mettiamo che la variabile sia cosi: Dim nome As New Form2, nel button che servirà per chiudere la sottoform devi inserie questo codice: nome.Hide()
allora tutti questi vari codici fungono in un form a parte da quanto ne ho tratto ora risolvete l'enigma intricato che si cela dentro °-° so che parlo come in un investigativo punta e clicca ma sono fatto così comunque apparte l'ot eccovi la stringa con cui apro la sottoform dentro la form base
Dim sottoform1 As New Form2
sottoform1.MdiParent = Me
sottoform1.Show()
una volta che io clicco il bottone questa form incalza a pennello dentro il form base e qua nessun problema ma mettiamo che io voglia aprire la form3 tadan cosa succede si sovrappongono!
allora creo il bottone con scritto
Dim sottoform1 As New Form3
sottoform1.MdiParent = Me
sottoform1.Show()
visualizza il form3 però sovrapposto allora ci aggiungo
Dim sottoform1 As New Form3
sottoform1.MdiParent = Me
sottoform1.Show()
form2.hide() 'tentativo fallito'
sottoform2.hide() 'stringa errata'
form2.close() ' tentativo fallito'
me.close() 'si è chiuso tutto'
altre idee?
Ho aggiustato il mio post precedente...
ho scritto dim form2.hide as new form2 ma non funziona (sicuramente ho sbagliato °-°)
Oddeo, stavolta io mi sono spiegato più che bene, è una cosa cosi elementare da fare che pensavo che subito l'avessi capita xD.
Rileggi bene quello che ho scritto, l'hide nella dichiarazione della variabile non c'entra nulla.
scusa dark legge a tratti ora ho capito °-°
No close !!!!!! devi usare Hide !!!!! XD te lo spiegato col cucchiaio <.< e poi togli la dichiarazione della variabile nel button che non serve.
steve hai sbagliato anche te ! XD non deve essere cosi: sottoform1.Close() ma cosi: sottoform1.Hide(), prima lo spiegato in modo cosi corretto e pulito ò.ò
Il close da errori dopo quando vai ad riaprire la form.
aveva ragione steve ora ho risolto grazie mille °-°
CON CLOSE
Apro il sottoform2 chiudo il sottoform2 con il bottone con close clicco sul bottone del sottoform2 e mi dice che il form2 è gia stato eliminato!
CON HIDE
Apro il sottoform2 chiudo il sottoform2 con il bottone con hide clicco sul bottone del sottoform2 e si sovrappone con quello vecchio..
con hide si sovrappone ora vi faccio dei video asd
Messaggi: 1,021
Discussioni: 28
Thanks Received:
0 in 0 posts
Thanks Given: 0
Thanks Received:
0 in 0 posts
Thanks Given: 0
Registrato: May 2010
Reputazione:
9
più che i video dammi un pezzo di codice...
con il codice che ti ho linkato sopra funziona (provato personalmente)
steve con dispose a me non apre nulla. E poi cosa c'entra disporre con aprire o mostrare ?
Comunque con hide si sovrappongono, è vero, perché hide nasconde la sottoform a noi ma al programma no. Ora vedo un po'.
se leggi è uguale al mio caro u_u
steve ha ragione Dany, le form si sovrappongono, io non ci avevo pensato, ma è una cosa palese, perché Hide nasconde, non chiude, è come se metti: nome.Visible = False, si sovrappongono lo stesso, il loro fantasma rimane xD.
Messaggi: 1,021
Discussioni: 28
Thanks Received:
0 in 0 posts
Thanks Given: 0
Thanks Received:
0 in 0 posts
Thanks Given: 0
Registrato: May 2010
Reputazione:
9
il file non mi funziona (l'hai chiamato prova.zip e mi scarica prova.exe), non è compatibile con i 64bit.
il codice che ti ho scritto ti assicuro che funziona
l'unico problemino, risolvibile, è che me lo avvia windowed (a finestra) e non maximized (a schermo intero, in modo che occupa tutta la form principale, come avevo impostato)
Ho provati in altri modi, ma alla fine devi adottare questa soluzione che non mi piace molto... nel button che chiude la form metti: nome.Anchor = AnchorStyles.Left
Non lo postato subito perché come modo non mi piace :|
P.S: nome deve essere uguale al nome delle variabile per far chiudere la form capito no ? xD