如何在没有Form的情况下创建notifyIcon?

问题描述:

我将notifyIcon添加到容器并设置Visible = true选项,但没有出现图标。如何在没有Form的情况下创建notifyIcon?

private void InitializeComponent() 
     { 
      this.components = new System.ComponentModel.Container(); 
      this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components); 
      this.SuspendLayout(); 
      // 
      // notifyIcon1 
      // 
      this.notifyIcon1.Text = "Manager"; 
      this.notifyIcon1.Visible = true; 
      // 
      // Form1 
      // 
      this.ClientSize = new System.Drawing.Size(0, 0); 
      this.ShowInTaskbar = false; 
      this.Visible = false; 

     } 

我相信你需要添加一些事件,这个工作,希望这有助于

public Form2() 
    { 
     InitializeComponent(); 
     notifyIcon1.Icon = SystemIcons.Asterisk; 
     notifyIcon1.DoubleClick += new EventHandler(notifyIcon1_DoubleClick);// to bring it back 
     this.Resize += new EventHandler(Form2_Resize);// to move it to tray 
    } 

    void notifyIcon1_DoubleClick(object sender, EventArgs e) 
    { 
     Show(); 
     this.BringToFront(); 
     this.WindowState = FormWindowState.Normal; 
    } 

    void Form2_Resize(object sender, EventArgs e) 
    { 
     if (this.WindowState ==FormWindowState.Minimized) 
      Hide(); 
    } 
+1

谢谢。只需要notifyIcon1.Icon = SystemIcons.Asterisk; – BILL 2011-04-12 11:32:47

notify当窗体最小化时显示图标。试试这个

this.WindowState = FormWindowState.Minimized; 
+0

无影响。图标未出现。 – BILL 2011-04-12 11:26:41