109,872
社区成员




using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Threading;
using System.Drawing.Drawing2D;
namespace Test
{
public partial class Form1 : Form
{
enum MouseState
{
None = 0,
MouseLeftDown = 1,
MouseRightDown = 2,
}
private MouseState _MouseState = MouseState.None;
public Form1()
{
InitializeComponent();
this.Load += new EventHandler(Form1_Load);
this.MouseMove += new MouseEventHandler(Form1_MouseMove);
this.MouseDown += new MouseEventHandler(Form1_MouseDown);
this.MouseUp += new MouseEventHandler(Form1_MouseUp);
}
void Form1_MouseUp(object sender, MouseEventArgs e)
{
_MouseState = MouseState.None;
if (e.Button == System.Windows.Forms.MouseButtons.Right)
{
this.Refresh();
}
}
void Form1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Left)
{
_MouseState = MouseState.MouseLeftDown;
return;
}
if (e.Button == System.Windows.Forms.MouseButtons.Right)
{
_MouseState = MouseState.MouseRightDown;
return;
}
}
void Form1_MouseMove(object sender, MouseEventArgs e)
{
if (_MouseState == MouseState.None)
{
return;
}
if (_MouseState == MouseState.MouseLeftDown)
{
Console.WriteLine(e.X + ", " + e.Y);
Graphics g = this.CreateGraphics();
//g.DrawEllipse(new Pen(Color.Red, 2), new Rectangle(e.X - 1, e.Y - 1, 2, 2));
g.DrawLine(new Pen(Color.Red, 2), new Point(e.X - 2, e.Y - 2), new Point(e.X, e.Y));
g.Dispose();
return;
}
}
void Form1_Load(object sender, EventArgs e)
{
this.AutoScaleBaseSize = new Size(5, 13);
this.ClientSize = new Size(800, 500);
}
}
}