文件名称:作者:金哲显编的软件
文件大小:56KB
文件格式:RAR
更新时间:2013-05-28 05:39:39
作者:金哲显编的软件
using System; using System.Drawing; using System.Windows.Forms; namespace ClipImage { public partial class FormImage : Form { #region private Point position; private Rectangle clip; #endregion public FormImage() { #region InitializeComponent(); this.TopMost = true; // 前端显示。 this.ShowInTaskbar = false; // 在 Windows 任务栏中隐藏窗体。 this.DoubleBuffered = true; // 双缓冲绘制图形。 this.FormBorderStyle = FormBorderStyle.None; // 窗体无边框。 this.Bounds = Screen.GetBounds(this); // 获取显示器的桌面区域。 this.TransparencyKey = this.BackColor; // 窗体背景透明化。 NotifyIcon notify = new NotifyIcon(); notify.Visible = true; // 图标在任务栏的通知区域中可见。 notify.Icon = Icon.ExtractAssociatedIcon(Application.ExecutablePath); // 启动程序图标。 notify.Text = AppDomain.CurrentDomain.FriendlyName; // 启动程序名称。 notify.MouseClick += new MouseEventHandler(notify_MouseClick); #endregion } #region OnMouseDown protected override void OnMouseDown(MouseEventArgs e) { base.OnMouseDown(e); switch (e.Button) { case MouseButtons.Left: position = e.Location; // 设置起始位置。 break; case MouseButtons.Right: if (clip.Width > 1 && clip.Height > 1) { clip.Offset(1, 1); // 平移。 using (Bitmap bmp = new Bitmap(--clip.Width, --clip.Height)) using (Graphics g = Graphics.FromImage(bmp)) { g.CopyFromScreen(clip.Location, Point.Empty, clip.Size); // 截图。 bmp.Save("Image.png", bmp.RawFormat); // 保存图片。 Clipboard.SetImage(bmp); // 图片存储到剪贴板中。 } System.Diagnostics.Process.Start("mspaint.exe", "Image.png"); // 用画图打开图片。 } clip = Rectangle.Empty; BackgroundImage.Dispose(); BackgroundImage = null; break; } } #endregion #region OnMouseMove protected override void OnMouseMove(MouseEventArgs e) { base.OnMouseMove(e); if (e.Button == MouseButtons.Left) { clip.X = Math.Min(position.X, e.X); clip.Y = Math.Min(position.Y, e.Y); clip.Width = Math.Abs(position.X - e.X); clip.Height = Math.Abs(position.Y - e.Y); this.Refresh(); // 立即重绘图形。 } } #endregion #region OnPaint protected override void OnPaint(PaintEventArgs e) { base.OnPaint(e); e.Graphics.DrawRectangle(Pens.Red, clip); e.Dispose(); } #endregion #region NotifyIcon private void notify_MouseClick(object sender, MouseEventArgs e) { switch (e.Button) { case MouseButtons.Left: this.BackgroundImage = new Bitmap(this.Width, this.Height); using (Graphics g = Graphics.FromImage(this.BackgroundImage)) { g.CopyFromScreen(Point.Empty, Point.Empty, this.Size); } this.Activate(); // 激活窗体并给予它焦点。 break; case MouseButtons.Right: (sender as NotifyIcon).Dispose(); Application.Exit(); break; } } #endregion } }
【文件预览】:
ShutDown.rar
ClipImage.rar