Meminimumkan Aplikasi WinForm ke Dulang pada Mula
Masalah
Mencipta aplikasi WinForm yang boleh meminimumkan ke dulang adalah mudah. Walau bagaimanapun, percubaan untuk memulakan aplikasi dalam keadaan yang diminimumkan menyebabkan aplikasi muncul dalam dialog tab alt dengan bar tajuknya sekali-sekala kelihatan.
Penyelesaian
Untuk mengelakkan aplikasi daripada kelihatan pada permulaan, kaedah SetVisibleCore() boleh ditindih. Ini melibatkan:
protected override void SetVisibleCore(bool value) { if (!allowVisible) { value = false; if (!this.IsHandleCreated) CreateHandle(); } base.SetVisibleCore(value); }
Di sini, allowVisible ialah set bendera untuk menunjukkan masa aplikasi sepatutnya kelihatan (cth., apabila pengguna mengklik "Tunjukkan" dalam menu konteks NotifyIcon). Jika allowVisible adalah palsu, parameter nilai ditetapkan kepada palsu untuk mengelakkan borang daripada kelihatan. Walau bagaimanapun, jika pemegang borang belum dibuat, ia mesti dibuat sebelum menetapkan nilai kepada palsu.
Selain itu, untuk mengelakkan aplikasi daripada ditutup apabila pengguna mengklik dua kali ikon bar tugas, kaedah OnFormClosing boleh ditindih:
protected override void OnFormClosing(FormClosingEventArgs e) { if (!allowClose) { this.Hide(); e.Cancel = true; } base.OnFormClosing(e); }
Di sini, allowClose ialah set bendera untuk menunjukkan bila aplikasi harus ditutup (cth., apabila pengguna mengklik "Keluar" dalam menu konteks NotifyIcon). Jika allowClose palsu, borang disembunyikan dan sifat e.Cancel ditetapkan kepada benar untuk menghalang aplikasi daripada ditutup.
Nota Tambahan
Acara Muatan untuk borang utama tidak akan menyala sehingga borang pertama kali ditunjukkan. Oleh itu, sebarang permulaan hendaklah dilakukan dalam pembina borang dan bukannya dalam pengendali acara Muatkan.
Atas ialah kandungan terperinci Bagaimana untuk Memastikan Apl WinForm Mula Diminimumkan ke Dulang Sistem Tanpa Menunjukkan Tanpa Dijangka?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!