2011-03-10 142 views
0

我有一张图片,我需要绘制一些点。问题是点出现几分之一秒然后消失。如何使图像上的点永久保存。我已将图像设置为表单的背景。在图像上绘制点

我正在处理C#.net框架。 谢谢。

回答

1

您可以为图像创建一个Graphics对象,然后在图像上绘制这些点。这确实使他们永久。像这样:

public void ImageDrawing() 
{ 
    // NOTE: There are several ways you can load an image 
    // this is just using an existing file on disk 
    var img = Image.FromFile("myimage.jpg"); 
    using (var g = Graphics.FromImage(img)) 
    { 
     g.DrawLine(Pens.AliceBlue, new Point(), new Point(img.Width - 1, img.Height - 1)); 
    } 
    this.BackgroundImage = img; 
} 

这将绘制一条AliceBlue线从左上角到右下角。

1

我们需要看代码。我的猜测是你正在使用CreateGraphics绘图,而不是在OnPaint中这样做,所以当控件重新绘制并且你再也不会绘制它时,它就被简单地删除了。重写OnPaint并在那里完成所有绘图(或发布相关示例)

1

在你的情况只是把你的点绘图代码OnPaint窗体的事件处理程序。您的积分消失,因为形式重绘例程