[ ceso @ 09.05.2005. 00:27 ] @
Kako mogu ponovno otvoriti Formu2 ako sam je zatvorijo klikom na x a da ne zatvaram cijelu aplikaciju. |
[ ceso @ 09.05.2005. 00:27 ] @
[ kul-rom @ 09.05.2005. 03:27 ] @
A kako si je prvi puta otvorio?
pozdrav ![]() [ mdragan76 @ 09.05.2005. 23:10 ] @
hmm, da stvarno kako si je otvorio prvi put
![]() nisam najbolje razumeo tvoje pitanje ali evo da probam da dam neki "intuitivni" odgovor. pretpostavimo da si negde u tvojoj aplikaciji (npr. pritiskom na neki button), otvorio form2 recimo na sledeci nacin: Code: Form2 frm=new Form2(); frm.Show(); kada je zatvoris sa "x" prozor nestaje, ali sve dok ti "tok programa" ne izadje iz scope-a sama klasa se ne brise iz memorije - dakle ako je to slucaj, jednostavno ces opet pozvati frm.Show() i - voila ![]() opet, ni meni tvoje pitanje nije bilo najjasnije, pa ako nisam "pogodio u metu" slobodno pitaj ![]() poz [ dusans @ 10.05.2005. 09:38 ] @
Da, ali kad jednom instanciraš formu i prikažeš je, a posle toga je zatvoriš, ne možeš ponovo da je prikažeš sa Show() jer je forma Dispose-ovana. Moraš ponovo instancirati formu.
[ mdragan76 @ 10.05.2005. 16:18 ] @
Hmm, stvarno je tako! Svakog dana nesto novo naucis :)
A sta mislis da proba da koristi property From.Visible? Recimo ovako: Code: Form2 frm=new Form2(); . . . this.frm.Visible=true; // ovo se nalazi u handleru za OnButton Jedino sto treba da se uradi je da se presretne (override-uje) onaj klik na "x" gde bi trebalo samo da se pozove Form.Hide(). Kombinacija Visible=true i Hide() provereno radi, ali me interesuje nesto drugo - da li se sam pritisak na "x" poziva Dispose() forme ili je u pitanju neki drugi mehanizam? [ ceso @ 11.05.2005. 01:01 ] @
Prvo da se ispričam sto nisam jučer pojasnijo vaše dileme.
Dakle Formu2 sam otvorijo na button : Form2 As New Form2 Form2.Show Što se tiče kombinacije Visible=true i Hide() to radi ali samo kada se zatvara preko Button ali kad se to stavi pod: Protected Overrides Sub OnClosed(ByVal e As System.EventArgs). Onda mi se isto javlja greška: Cannot access a disposed object named "Form2". Object name:"Form2" [ eon @ 11.05.2005. 07:11 ] @
Citat: Da, ali kad jednom instanciraš formu i prikažeš je, a posle toga je zatvoriš, ne možeš ponovo da je prikažeš sa Show() jer je forma Dispose-ovana. Moraš ponovo instancirati formu. Mozes deklarisati formu2 kao privatnog clana forme1. Zatim je pozivati kao: Code: if (frm == null) frm = new Form2(); frm.ShowDialog(); [ ceso @ 11.05.2005. 23:39 ] @
Samo da vam se zahvalim i da kažem da sam rešio problem zahvaljujući vama.
HVALA... [ dezelin32 @ 12.05.2005. 11:47 ] @
Citat: Code: if (frm == null) frm = new Form2(); frm.ShowDialog(); A moze i tako... :) cheers Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|