欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來到入門教程網(wǎng)!

C#教程

當(dāng)前位置:主頁(yè) > 軟件編程 > C#教程 >

C#隱藏主窗口的方法小結(jié)

來源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C#教程|點(diǎn)擊: 次

本文實(shí)例總結(jié)了C#隱藏主窗口的方法。分享給大家供大家參考,具體如下:

要求在程序啟動(dòng)的時(shí)候主窗口隱藏,只在系統(tǒng)托盤里顯示一個(gè)圖標(biāo)。一直以來采用的方法都是設(shè)置窗口的ShowInTaskBar=false, WindowState=Minimized。但是偶然發(fā)現(xiàn)盡管這樣的方法可以使主窗口隱藏不見,但是在用Alt+Tab的時(shí)候卻可以看見這個(gè)程序的圖標(biāo)并把這個(gè)窗口顯示出來。因此這種方法其實(shí)并不能滿足要求。

方法一: 重寫setVisibleCore方法

protected override void SetVisibleCore(bool )
{
   base.SetVisibleCore(false);
}

這個(gè)方法比較簡(jiǎn)單,但是使用了這個(gè)方法后主窗口就再也不能被顯示出來,而且在退出程序的時(shí)候也必須調(diào)用Application.Exit方法而不是Close方法。這樣的話就要考慮一下,要把主窗口的很多功能放到其他的地方去。

方法二: 不創(chuàng)建主窗口,直接創(chuàng)建NotifyIcon和ContextMenu組件
這種方法比較麻煩,很多代碼都必須手工寫

static void Main()
{
  Application.EnableVisualStyles();
  Application.SetCompatibleTextRenderingDefault(false);
  System.Resources.ResourceManager resources =
    new System.Resources.ResourceManager("myResource", System.Reflection.Assembly.GetExecutingAssembly());
  NotifyIcon ni = new NotifyIcon();
  ni.BalloonTipIcon = System.Windows.Forms.ToolTipIcon.Warning;
  ni.BalloonTipText = "test!";
  ni.BalloonTipTitle = "test.";
  //ni.ContextMenuStrip = contextMenu;
  ni.Icon = ((System.Drawing.Icon)(resources.GetObject("ni.Icon")));
  ni.Text = "Test";
  ni.Visible = true;
  ni.MouseClick += delegate(object sender, MouseEventArgs e)
  {
    ni.ShowBalloonTip(0);
  };
  Application.Run();
}

如果需要的組件太多,這個(gè)方法就很繁瑣,因此只是做為一種可行性研究。

方法三:前面兩種方法都有一個(gè)問題,主窗口不能再顯示出來?,F(xiàn)在這種方法就沒有這個(gè)問題了

private bool windowCreate=true;
...
protected override void OnActivated(EventArgs e)
{
  if (windowCreate)
  {
    base.Visible = false;
    windowCreate = false;
  }
  base.OnActivated(e);
}
private void notifyIcon1_DoubleClick(object sender, EventArgs e)
{
  if (this.Visible == true)
  {
    this.Hide();
    this.ShowInTaskbar = false;
  }
  else
  {
    this.Visible = true;
    this.ShowInTaskbar = true;
    this.WindowState = FormWindowState.Normal;
    //this.Show();
    this.BringToFront();
  }
}

更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#常見控件用法教程》、《C#面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》及《C#程序設(shè)計(jì)之線程使用技巧總結(jié)》

希望本文所述對(duì)大家C#程序設(shè)計(jì)有所幫助。

上一篇:C#實(shí)現(xiàn)圖片加相框的方法

欄    目:C#教程

下一篇:C#雙緩沖實(shí)現(xiàn)方法(可防止閃屏)

本文標(biāo)題:C#隱藏主窗口的方法小結(jié)

本文地址:http://mengdiqiu.com.cn/a1/C_jiaocheng/6668.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有