thanosaek Δημοσ. 2 Μαρτίου 2009 Δημοσ. 2 Μαρτίου 2009 Καλησπέρα σε όλους.... Εχω φτιάξει μια κρεμμάλα σε Visual Studio σε Form Application...Θέλω ένα κουμπί προκειμένου να φέρνω την Form στην αρχική της κατάσταση δλδ στην κατάσταση που είναι όταν ξεκινάει....Κάτι σαν Reload..... Kαμία ιδέα....??????
Evgenios1 Δημοσ. 2 Μαρτίου 2009 Δημοσ. 2 Μαρτίου 2009 θα κανεις ενα Control το οποιο θα κανεις 'Reload' ή μια θεδος η οποια θα "σεταρει" της επειλογες σπου ετσι οπως θελεις. ειναι αοριστο αυτο που λες... παντος το πρωτο ειναι καλιτερη ληση yo --- Αν επιμενεις > private void relode_Click(...) { Program.Main("oti nane"); this.Dispose();ή this.Close(); }
alex2005 Δημοσ. 3 Μαρτίου 2009 Δημοσ. 3 Μαρτίου 2009 Άκυρο post (απάντησα για φόρμα σε HTML ) ας το διαγράψει κάποιος
thanosaek Δημοσ. 3 Μαρτίου 2009 Μέλος Δημοσ. 3 Μαρτίου 2009 Αυτό που λέω είναι ότι θέλω να γίνονται όλες οι διαδικασίες απο την αρχή....Η αρχικοποιήσης....Τα μεγέθη και τα περιεχόμενα τον label και των picture κ.τ.λ..... Αν εννοείς να τα κάνω όλα αυτό χειροκίνητα είναι πολύ δύσκολο.....Απλά έλεγα αν μπορώ να αρχικοποιώ την form....Σαν να κλείνω το πρόγραμμα και να το ξανανοίγω.... Αυτό θέλω.... Οσο για το Program.Main() δε το κατάλαβα....Η Main δεν υπάρχει σα συνάρτηση...
Evgenios1 Δημοσ. 3 Μαρτίου 2009 Δημοσ. 3 Μαρτίου 2009 Αυτο με το Main(string[] a) στην ουσια κανει restart.... εχει .net2 ετσι δεν ειναι? στο project εχεις μια κλαση Program η οποια εχει μια σναρτηση Main(...) και μεσα εχει ενα Application.Run(new ins()); τεσπα κανε ενα κοτρολ δες εδω ενα παραδιγμα > public class win : Form { private class uc : UserControl { public uc() { this.Controls.Add(new CheckBox { Name = "test1", Text = "test1", Checked = true, Location = new Point(10, 10) } ); this.Controls.Add(new CheckBox { Name = "test2", Text = "test2", Checked = false, Location = new Point(10, 30) }); } } private Button btnReset; public win() { btnReset = new Button { Text = "Reset", Location = new Point(10, 10) }; this.Controls.AddRange(new Control[] { new uc {Location=new Point(0,40) }, btnReset } ); btnReset.Click += delegate { this.Controls.Clear(); this.Controls.AddRange(new Control[] { new uc {Location=new Point(0,40) }, btnReset } ); }; } public static void ShowThisWin() { var v = new win(); v.ShowDialog(); } } Δοκιμασε το να δεις τι ενοω Για να τρεξεος το παραθυρο, απλα βαλε win.ShowThisWin();
thanosaek Δημοσ. 3 Μαρτίου 2009 Μέλος Δημοσ. 3 Μαρτίου 2009 Δε κατάφερα να τρέξω το προγραμμά σου αλλά χρησιμοποίησα την εντολή public static void ShowThisWin() { var v = new win(); v.ShowDialog(); } Με αυτό ανοίγει κανονικά ένα καινούργιο παράθυρο όπως ακριβώς το θέλω....Αλλά δε μπορώ να κλείσω το από πίσω παράθυρο γιατί είναι η βασική form και όταν κάνω Close() κλείνουν και τα δύο....Μπορώ να το αλλάξω αυτό....??? Σκέφτικα κάτι άλλο..... Θα κρύψω την αρχική Form...Έτσι θα κάνω var v = new Form1(); this.Hide(); v.Show(); Όταν θέλω να το κλείσω θα κλείνω την αρχική Φόρμα....Αυτό που θέλω να σε ρωτήσω είναι αν ξέρεις τι πρέπει να γράψω πριν το Close()....Δλδ αν θέλω να κλείσω την τελευταία φόρμα πατάω v.Close().....Για την αρχική τι βάζω....???
Evgenios1 Δημοσ. 3 Μαρτίου 2009 Δημοσ. 3 Μαρτίου 2009 καντω με κοντρολ σου λεω... για να τρεξεις αυτο που ποσταρα θελεις νετ3.5 τελος για να το δοκιμασεις new porject -> consola application και στο main βαζεις απλος win.ShowThisWin(); > static class Program { static void Main() { win.ShowThisWin(); } } }
thanosaek Δημοσ. 3 Μαρτίου 2009 Μέλος Δημοσ. 3 Μαρτίου 2009 Κατάλαβα.... Απλά δε γνωρίζω από Controls και πρέπει να τα κοιτάξω λίγο....Επειδή πρέπει να την δώσω αύριο την εργασία δε προλαβένω...Έτσι θα κάνω το φνωστό κόλπο Application.Exit()..... Σε ευχαριστώ πολύ πάντως.... CU
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.