>  기사  >  类库下载  >  C# 트레이 프로그램 예제 더블클릭하면 폼이 표시되고 트레이로 최소화됩니다.

C# 트레이 프로그램 예제 더블클릭하면 폼이 표시되고 트레이로 최소화됩니다.

大家讲道理
大家讲道理원래의
2016-11-10 09:15:521822검색

작업 표시줄 클릭하여 표시/숨기기 스위치, 마우스 오른쪽 버튼 클릭 메뉴, 양식 닫기 이벤트 캡처

public partial class frmMain : Form  
   {  
       public frmMain()  
       {  
           InitializeComponent();  
       }  
  
  
       #region 注销  
   
   
       public void Logout()  
       {  
           if (MessageBox.Show("确认要退出吗?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK)  
           {  
               notifyIcon1.Visible = false;  
               FormCollection fc = Application.OpenForms;  
               if (fc != null && fc.Count > 0)  
               {  
                   foreach (Form window in fc)  
                   {  
                       window.Hide();  
                   }  
               }  
               CacheHelper.CurrentUsrName = "";  
               CacheHelper.CurrentRoleId = 0;  
               frmLogin fl = new frmLogin();  
               fl.Show();  
           }  
   
   
       }  
   
   
       private void 注销登陆ToolStripMenuItem_Click(object sender, EventArgs e)  
       {  
           Logout();  
       }  
  
  
       #endregion  
  
  
       #region 修改密码  
   
   
       private void 修改密码ToolStripMenuItem_Click(object sender, EventArgs e)  
       {  
           frmChangePwd fcp = new frmChangePwd();  
           fcp.Show();  
       }  
  
  
       #endregion  
   
   
       private void frmMain_Load(object sender, EventArgs e)  
       {  
   
   
       }  
   
   
       private void frmMain_FormClosing(object sender, FormClosingEventArgs e)  
       {  
           if (MessageBox.Show("确认要退出吗?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK)  
           {  
               Logout();  
           }  
           else 
           {  
               e.Cancel = true;  
           }  
       }  
   
   
       private void 最大化ToolStripMenuItem_Click(object sender, EventArgs e)  
       {  
           ShowWin();  
       }  
   
   
       private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)  
       {  
           Logout();  
       }  
   
   
       private void frmMain_SizeChanged(object sender, EventArgs e)  
       {  
           if (this.WindowState == FormWindowState.Minimized)  
           {  
               HideWin();  
           }  
       }  
   
   
       private void notifyIcon1_MouseClick(object sender, MouseEventArgs e)  
       {  
           if (e.Button == MouseButtons.Right)  
           {  
               contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);  
           }  
           else 
           {  
               ShowWin();  
           }  
       }  
  
  
       #region 隐藏显示窗体  
   
   
       /// <summary>  
       /// 隐藏窗体  
       /// </summary>  
       private void HideWin()  
       {  
           this.notifyIcon1.Visible = true;  
           this.Hide();  
       }  
   
   
       /// <summary>  
       /// 显示主窗体  
       /// </summary>  
       private void ShowWin()  
       {  
           if (Visible)  
           {  
               HideWin();  
           }  
           else 
           {  
               /////这里注意顺序很重要,先show 后设置state  
               Show();  
               WindowState = FormWindowState.Normal;  
           }  
       }  
  
  
       #endregion  
   }


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.