Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Memulakan Aplikasi WinForms Diminimumkan ke Dulang Sistem Tanpa Sebarang Isu Keterlihatan?
Memulakan Aplikasi WinForm Diminimumkan ke Dulang
Mencipta aplikasi yang meminimumkan ke dulang menggunakan NotifyIcon selalunya merupakan ciri yang mudah. Walau bagaimanapun, memulakan aplikasi yang diminimumkan dengan tetingkap tersembunyi boleh memberikan cabaran.
Dalam satu keadaan, meminimumkan apl pada mulanya menjadikannya kelihatan dalam dialog tab alt. Menyelesaikan perkara ini dengan menukar pilihan FormBorderStyle kepada ToolWindow memperkenalkan isu baharu: bar tajuk tetingkap menjadi kelihatan seketika di atas menu mula semasa permulaan.
Untuk menangani masalah ini, pertimbangkan untuk menghalang borang daripada muncul sama sekali semasa permulaan. Ini memerlukan menggantikan kaedah SetVisibleCore():
protected override void SetVisibleCore(bool value) { if (!allowVisible) { value = false; if (!this.IsHandleCreated) CreateHandle(); } base.SetVisibleCore(value); }
Bendera allowVisible menunjukkan sama ada borang itu harus kelihatan. Dengan menetapkannya kepada palsu pada permulaan, ia menghalang borang daripada kelihatan walaupun dengan WindowState pada mulanya ditetapkan kepada Diminimumkan.
Selain itu, gantikan pengendali acara OnFormClosing untuk mengendalikan penutupan borang daripada menu sistem:
protected override void OnFormClosing(FormClosingEventArgs e) { if (!allowClose) { this.Hide(); e.Cancel = true; } base.OnFormClosing(e); }
Tetapan allowClose to false menindas kelakuan tutup lalai dan sebaliknya menyembunyikan borang.
Dalam menu konteks NotifyIcon, anda boleh menentukan pengendali untuk arahan Tunjuk dan Keluar untuk mengawal keterlihatan borang dan penamatan aplikasi, masing-masing.
Pendekatan ini membolehkan anda memulakan aplikasi diminimumkan ke dulang, tanpa sebarang kesan sampingan yang tidak diingini, meninggalkan NotifyIcon sebagai komponen antara muka pengguna utama.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memulakan Aplikasi WinForms Diminimumkan ke Dulang Sistem Tanpa Sebarang Isu Keterlihatan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!