下面是主要代码:(没有注释,不要骂人) using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using WMEncoderLib; using System.Runtime.InteropServices; using Microsoft.Win32; using System.Threading; using System.IO; using System.Drawing.Drawing2D; namespace F.ScreenCamera { public partial class MainForm : Form { 有关系统托盘#region 有关系统托盘 /**//// <summary> /// 托盘图标类实例 /// </summary> private NotifyIcon notifyIcon; /**//// <summary> /// 托盘菜单 /// </summary> private ContextMenu notificationMenu; /**//// <summary> /// 初始化托盘 /// </summary> public void NotificationIcon() { notifyIcon = new NotifyIcon(); notificationMenu = new ContextMenu(InitializeMenu()); notifyIcon.DoubleClick += IconDoubleClick; notifyIcon.Icon = this.Icon; notifyIcon.ContextMenu = notificationMenu; notifyIcon.Visible = true; } /**//// <summary> /// 托盘菜单 /// </summary> /// <returns></returns> private MenuItem[] InitializeMenu() { //加载主题菜单 MenuItem SkinMenu = new MenuItem("主题"); DirectoryInfo dir = new DirectoryInfo(Application.StartupPath + "//Skin"); foreach (FileInfo skinfile in dir.GetFiles()) { string skinname = skinfile.Name.Substring(0, (int)skinfile.Name.Length - 4); SkinMenu.MenuItems.Add(new MenuItem(skinname, ChangeSkin)); } // // MenuItem[] menu = new MenuItem[] { new MenuItem("显示主窗口", IconDoubleClick), new MenuItem("隐藏主窗口", HideMainForm), SkinMenu, new MenuItem("关于", menuAboutClick), new MenuItem("退出", menuExitClick) }; return menu; } 托盘事件#region 托盘事件 /**//// <summary> /// 托盘关于菜单 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void menuAboutClick(object sender, EventArgs e) { if (about == null || about.IsDisposed) about = new About(); about.Show(); } /**//// <summary> /// 托盘退出菜单 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void menuExitClick(object sender, EventArgs e) { this.notifyIcon.Visible = false; Application.Exit(); } /**//// <summary> /// 双击托盘图标显示主窗口 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void IconDoubleClick(object sender, EventArgs e) { this.Visible = true; this.WindowState = FormWindowState.Normal; } /**//// <summary> /// 隐藏主窗口 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void HideMainForm(object sender, EventArgs e) { this.WindowState = FormWindowState.Minimized; this.Visible = false; } /**//// <summary> /// 改变风格 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void ChangeSkin(object sender, EventArgs e) { string skinname = ((MenuItem)sender).Text; SetSkin(skinname); ConfigManager.AppSetings appseting = new ConfigManager.AppSetings(); apps