在WINFORM上,点一下按钮,会出现一个图标,和几个字,效果如下:

这里是全部的代码:
namespace WinFormDraw
{
public partial class Form1 : Form
{
public Bitmap bmp = new Bitmap(200, 200);//先新建一个bmp对象,200x200
public Graphics graphics = null;
Image png06 = Image.FromFile(@"v.png");
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
graphics = Graphics.FromImage(bmp); //拿到bmp的graphics画图对象
graphics.DrawImage(png06, 50, 50);//画PNG
graphics.DrawString("村民", new Font("宋体", 20, FontStyle.Bold), Brushes.Red, new PointF(29, 29));//写字
this.CreateGraphics().DrawImage(bmp, 0, 0); //显示这张BMP
}
}
}
代码的详细说明如下:
一、新建一个bmp对象,大小是200*200
public Bitmap bmp = new Bitmap(200, 200);
二、准备一张图片,把它和项目编译程序放一个目录
我准备了一张PNG图片,20*20像素,把它和项目编译程序放一个目录:

用这行代码,我们加载它:
Image png06 = Image.FromFile(@"v.png");
三、拿到bmp对象的画图graphics对象
public Graphics graphics = null;
graphics = Graphics.FromImage(bmp); //拿到bmp的graphics画图对象
四、我们在graphics对象上画图标和画写字
graphics.DrawImage(png06, 50, 50);//画PNG
graphics.DrawString("村民", new Font("宋体", 20, FontStyle.Bold), Brushes.Red, new PointF(29, 29));//写字
五、最后我们在WINFORM窗体上把BMP显示出来
this.CreateGraphics().DrawImage(bmp, 0, 0); //显示这张BMP
最后说明:
先在graphics对象上画我们的图像和文字,最后再把一幅完整的BMP一下显示出来,这样可以避免图像内容更新带来的闪烁。
后面的DEMO中出现了动画:C# WINFORM 控件动画无闪烁的例子DEMO(C#无闪烁画图二)
7408

被折叠的 条评论
为什么被折叠?



