using System.Drawing;
using System.Windows.Forms;
namespace ClipScreen
{
public partial class FormScreen : Form
{
private NotifyIcon notifyInfo;
public FormScreen()
{
#region
InitializeComponent();
this.TopMost = true; // 前端显示。
this.ShowInTaskbar = false; // 在 Windows 任务栏中隐藏窗体。
this.DoubleBuffered = true; // 双缓冲绘制图形。
this.FormBorderStyle = FormBorderStyle.None; // 窗体无边框。
this.BackgroundImageLayout = ImageLayout.None; // 图像沿控件的矩形工作区顶部左对齐。
this.DesktopBounds = Screen.GetWorkingArea(this); // 获取桌面区域。
this.TransparencyKey = this.BackColor; // 窗体透明化。
this.BackgroundImage = new Bitmap(this.Width, this.Height);
using (Graphics g = Graphics.FromImage(this.BackgroundImage))
{
g.CopyFromScreen(Point.Empty, Point.Empty, this.Size);
}
notifyInfo = new NotifyIcon();
notifyInfo.Visible = true;
notifyInfo.Icon = Icon.ExtractAssociatedIcon(Application.ExecutablePath);
notifyInfo.Text = AppDomain.CurrentDomain.FriendlyName;
notifyInfo.BalloonTipClosed += new EventHandler(notifyInfo_BalloonTipClosed);
notifyInfo.Click += new EventHandler(notifyInfo_Click);
#endregion
}
#region OnMouseMove
protected override void OnMouseMove(MouseEventArgs e)
{
base.OnMouseMove(e);
if (e.Button == MouseButtons.Left)
using (Graphics g = this.CreateGraphics())
{
g.FillEllipse(Brushes.Cyan, e.X, e.Y, 10, 10);
}
}
#endregion
#region OnMouseUp
protected override void OnMouseUp(MouseEventArgs e)
{
base.OnMouseUp(e);
if (e.Button == MouseButtons.Right)
this.Refresh();
}
#endregion
#region NotifyIcon
private void notifyInfo_Click(object sender, EventArgs e)
{
notifyInfo.ShowBalloonTip(10, notifyInfo.Text, " 在系统托盘中运行", ToolTipIcon.Info);
}
private void notifyInfo_BalloonTipClosed(object sender, EventArgs e)
{
notifyInfo.Visible = false;
Application.Exit();
}
#endregion
}
}