winform窗體程序運行后怎樣隱藏?


運行winform窗體,我們是怎樣隱藏的呢?

例子:

1)創建簡單winform窗體

2)編寫隱藏窗體程序的代碼

3)效果演示

 

1)創建一個簡單的winform窗體MainForm,

這樣運行后,在任務欄能看到窗體,怎樣隱藏,在load事件中加上

  //窗體最小化顯示
    this.WindowState = FormWindowState.Minimized;
    //不顯示在任務欄中
    this.ShowInTaskbar = false;

可以通過設置窗體最小化運行,不顯示在任務欄,但是這樣還是出現一個問題,

在Alt+tab 的視圖窗體可以看到程序,如何解決?

    /// <summary>
        /// 讓程序不顯示在alt+Tab視圖窗體中
        /// </summary>
        protected override CreateParams CreateParams
        {
            get
            {
                const int WS_EX_APPWINDOW = 0x40000;
                const int WS_EX_TOOLWINDOW = 0x80;
                CreateParams cp = base.CreateParams;
                cp.ExStyle &= (~WS_EX_APPWINDOW);    // 不顯示在TaskBar
                cp.ExStyle |= WS_EX_TOOLWINDOW;      // 不顯示在Alt+Tab
                return cp;
            }
        }

2)編寫隱藏窗體程序的代碼

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsForms
{
    public partial class FormMain : Form
    {
        public FormMain()
        {
            InitializeComponent();
        }

        private void FormMain_Load(object sender, EventArgs e)
        {
            //窗體最小化顯示
            this.WindowState = FormWindowState.Minimized;
            //不顯示在任務欄中
            this.ShowInTaskbar = false;           
        }

        /// <summary>
        /// 讓程序不顯示在alt+Tab視圖窗體中
        /// </summary>
        protected override CreateParams CreateParams
        {
            get
            {
                const int WS_EX_APPWINDOW = 0x40000;
                const int WS_EX_TOOLWINDOW = 0x80;
                CreateParams cp = base.CreateParams;
                cp.ExStyle &= (~WS_EX_APPWINDOW);    // 不顯示在TaskBar
                cp.ExStyle |= WS_EX_TOOLWINDOW;      // 不顯示在Alt+Tab
                return cp;
            }
        }
    }
}

 3)演示效果

3.1)只設置最小化、不在任務欄顯示

按Alt+Tab可以看到窗體程序

3.2) 設置程序不在ALT+Tab視圖窗體中顯示

3.3)程序在后台運行(任務管理器)

參考網址來源:

http://bbs.csdn.net/topics/392055218?page=1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM