C# panel Paint

来源:百度知道 编辑:UC知道 时间:2024/06/18 06:11:47
我在做Form,我在panel里用Paint画画.
现在我想把Panel上的我画的 图片另保存,
如何写代码?
求救!!
谢谢了不过我还有问题
我再保存的按钮里写了
Bitmap bit;
Graphics g;
Pen pen;
bool draw = false;
Point startPoint;
SaveFileDialog saveFileDialog;
pictureBox5.Dock = DockStyle.Fill;
bit = new Bitmap(pictureBox5.Width, pictureBox5.Height);
g = Graphics.FromImage(bit);
g.Clear(pictureBox5.BackColor);//设置bit的背景色
pen = new Pen(Color.Red);
saveFileDialog = new SaveFileDialog();
draw = true;
startPoint = **e.Location**;
FolderBrowserDialog folderBrowserDialog1 = new FolderBrowserDialog();
folderBrowserDialog1.Description = "请选择保存输出图片的文件夹";
folderBrowserDialog1.ShowNewFolderButton = true;
folderBrowserDialog1.RootFolder = Environment.SpecialFolder.MyComputer;
DialogResult result = folderBrowserDialog1.ShowDialog();
if (result == DialogResult.OK)
{
string folderName = folderBrowserDialog1.Selected

不知道你用FolderBrowserDialog这个东西是干什么用,要是想保存文件SaveFileDialog完全可以解决,即使是用FolderBrowserDialog最后在folderName(这只是个文件夹名)后面也应该加个文件名如"AA.bmp",而且你在保存的时候写的是bit.Save(saveFileDialog.FileName);saveFileDialog没有显示过所以saveFileDialog.FileName为空,即路径的形式不合法

如果你想在窗体上画最好用PictureBox,它的刷新效果比较好,用下面的方法可以实现简单的绘制,保存
首先托一个PictureBox到窗体,然后就加上下面的代码就行了
Bitmap bit;
bool draw = false;
Graphics g;
Point startPoint;
Pen pen;
SaveFileDialog saveFileDialog;
private void Form1_Load(object sender, EventArgs e)
{
pictureBox1.Dock = DockStyle.Fill;
bit = new Bitmap(pictureBox1.Width, pictureBox1.Height);
g = Graphics.FromImage(bit);
g.Clear(pictureBox1.BackColor);//设置bit的背景色
pen = new Pen(Color.Red);
saveFileDialog = new SaveFileDialog();
saveFileDialog.Filter = "bmp|*.bmp|jpg|*.jpg|gif|*.gif";
}

private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
draw = false;