Hide form by close button

1

Właśnie skrobiąc sobie mini aplikację pod C++/.NET przypomniałem sobie o tym jaki kiedyś miałem problem z ‚oprogramowaniem’ przycisku [X] na formach. Tzn przez długie miesiące gnębił mnie problem co zrobić, aby ów X nie zamykał mojej aplikacji, formy… nie zabijał, jakie to jego przeznaczenie. Zabawne, ale kiedyś miałem nieziemski problem z tym, a rozwiązanie jest takie proste.

Formy pod .NET’em automatycznie wywołują metodę FormClosing tuż na początku pierwszych sygnałów zamknięcia. W tym momencie możesz świetnie wejść temu całemu procesowi w drogę, anulować go i wykonać swoje wybrane polecenia.

Wygeneruj sobie to zdarzenie. Cały proces anulujesz odwołując się do obiektu e ustawiając flagę true na cechę cancel.

Przykład:

private: System::Void Form1_FormClosing(System::Object^  sender, System::Windows::Forms::FormClosingEventArgs^  e) {
			 e->Cancel = true;
			 Hide();
		 }

Analogicznie postępujesz w C#, VB.NET… Czemu taką durnotę publikuję? Bo kiedyś byłem na tyle ciasny, że nie umiałem znaleźć tego rozwiązania.. Przekonuję się powoli coraz bardziej do .NET’u..

Jednak.. Dowolna próba zamknięcia aplikacji będzie ją tylko ukrywać. Dla Ciebie zostaje teraz smaczek oprogramowania tego.. ;)

Tagi: , ,

Komentarze (1)

Miałem kiedyś podobny problem z wyświetlaniem pytania o zapisanie zmian przy zamykaniu okna ale jakoś przy pomocy google, rzucania k****mi, kawie i logicznemu myśleniu wykombinowałem sposób :D

Publikuj więcej takich, chętnie czytam takie teksty bo można się sporo nauczyć a czasami rozwiązać problem nad którym się głowimy od godzin :)

Pozdrawiam.

Skomentuj