C#借助谷歌翻译实现翻译小工具(二)添加托盘图标
接上一节完善小翻译工具
设置Form的ShowInTaskbar属性为False,取消任务栏显示
设置Form的MaximizeBox属性为False,取消最大化显示
窗口添加两个控件
分别是:ContextMenuStrip和NotifyIcon
设置notifyIcon1的Icon
编辑contextMenuStrip1,添加显示主界面,隐藏主界面和退出两个菜单
设置notifyIcon1的ContextMenuStrip为contextMenuStrip1
添加相关代码:
/// <summary> /// 关闭标记,如果是False则为退出,否则只是隐藏界面 /// </summary> bool Exit = false; //显示主界面 private void menuItem_Show_Click(object sender, EventArgs e) { base.Show(); this.Activate(); } //隐藏主界面 private void menuItem_Hide_Click(object sender, EventArgs e) { this.Hide(); } //双击事件 private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e) { base.Show(); } //退出 private void MenuItem_Exit_Click(object sender, EventArgs e) { this.Exit = true; base.Close(); } //窗体关闭 private void Form1_FormClosing(object sender, FormClosingEventArgs e) { if (!this.Exit) { base.Hide(); e.Cancel = true; } } /// <summary> /// 拦截右上角最小化事件消息,最小化隐藏拦截右上角关闭按钮事件 /// </summary> /// <param name="m"></param> protected override void WndProc(ref Message m) { if ((m.Msg == 0x112) && (m.WParam.ToInt32() == 0xf020)) { base.Hide(); } else { base.WndProc(ref m); } }
慎于行,敏于思!GGGGGG