winform做一个画板
时间: 2024-01-14 21:04:24 浏览: 35
以下是使用WinForm创建一个简单的画板的步骤:
1. 创建一个WinForm窗体,并添加一个PictureBox控件作为画板。
2. 添加两个Button按钮,一个用于开始画画,另一个用于保存画板上的内容。
```csharp
// 创建一个Form窗体
public partial class Form1 : Form
{
// 用于记录鼠标当前位置的变量
private int currentXpos;
private int currentYpos;
// 用于判断是否开始移动鼠标的标志位
private bool beginMove = false;
// 用于绘制图像的画笔和画板
private Pen myPen;
private Graphics g;
// 用于保存绘制的图像
private Image myImage;
public Form1()
{
InitializeComponent();
// 初始化画笔和画板
myPen = new Pen(Color.Red, 2);
myImage = new Bitmap(pictureBox1.Width, pictureBox1.Height);
g = Graphics.FromImage(myImage);
}
// 鼠标按下时开始绘制
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
beginMove = true;
currentXpos = e.X;
currentYpos = e.Y;
}
// 鼠标移动时绘制线条
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (beginMove)
{
g.DrawLine(myPen, currentXpos, currentYpos, e.X, e.Y);
pictureBox1.Image = myImage;
currentXpos = e.X;
currentYpos = e.Y;
}
}
// 鼠标释放时停止绘制
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
beginMove = false;
}
// 点击保存按钮保存绘制的图像
private void btnSave_Click(object sender, EventArgs e)
{
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = "JPEG Image|*.jpg|Bitmap Image|*.bmp|PNG Image|*.png";
saveFileDialog.Title = "Save an Image File";
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
myImage.Save(saveFileDialog.FileName);
}
}
}
```