关于c#双缓冲作图的问题
在利用双缓冲作图之中,所得的图像需要拉大或缩小窗口才能显示出来。。求解释空间panel中的程序privatevoidpanel1_Paint(objectsender,P...
在利用双缓冲作图之中,所得的图像需要拉大或缩小窗口才能显示出来。。求解释
空间panel中的程序
private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics g = panel1.CreateGraphics();
g.DrawImage(bit, 0, 0);
g.Dispose();
}
有一个空间button
程序aphics g = Graphics.FromImage(bit);
g.Clear(Color.FromArgb(255, 255, 255));
Pen pen = new Pen(Color.Black, 1);
g.DrawLine(pen, 0, 0, 170, 240);
g.Dispose ();
form中的load
private void Form1_Load(object sender, EventArgs e)
{
bit = new Bitmap(400, 300);
}
急。。在线等 展开
空间panel中的程序
private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics g = panel1.CreateGraphics();
g.DrawImage(bit, 0, 0);
g.Dispose();
}
有一个空间button
程序aphics g = Graphics.FromImage(bit);
g.Clear(Color.FromArgb(255, 255, 255));
Pen pen = new Pen(Color.Black, 1);
g.DrawLine(pen, 0, 0, 170, 240);
g.Dispose ();
form中的load
private void Form1_Load(object sender, EventArgs e)
{
bit = new Bitmap(400, 300);
}
急。。在线等 展开
2个回答
展开全部
Paint事件作如下修改:
private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
g.DrawImage(bit, 0, 0);
g.Dispose();
}
知道为什么图像需要拉拽才能显示么?Graphics是个临时对象,每次绘图都会产生一个Graphics,所以你只能从事件参数PaintEventArgs中取得Graphics.这样能保证每次得到的Graphics都是最新的。
private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
g.DrawImage(bit, 0, 0);
g.Dispose();
}
知道为什么图像需要拉拽才能显示么?Graphics是个临时对象,每次绘图都会产生一个Graphics,所以你只能从事件参数PaintEventArgs中取得Graphics.这样能保证每次得到的Graphics都是最新的。
追问
改了之后也不对啊。。
追答
晕啊,哪里不对,你跟一下代码把错误发出来看看啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询