您好我在用c#做软件,要用画图功能,但是图像保持不了,听说用onPaint方法可以保持图像,怎么用的啊

C#方面我还有不少不太懂的地方,还请你多多指教... C#方面我还有不少不太懂的地方,还请你多多指教 展开
 我来答
雨兰吟G
2012-05-05 · TA获得超过1082个赞
知道小有建树答主
回答量:282
采纳率:100%
帮助的人:444万
展开全部
将数据显示分离开来,根据相应的数据在OnPaint里进行图像绘制。
例如自己的窗体类里:
int[,] GameMap=new GameMap[10,10]; //初始化写在其他地方。

protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
Graphics g = e.Graphics;
//根据数据绘图
for(int i=0;i<10;i++)
for(int j=0;j<10;j++)
g.DrawRectangle(Pens.Black,i*40,j*40,40,40);
}

然后,一般情况下最大最小化窗体之类的操作就会重绘窗体,有时候更改数据后要立即重绘的话,调用Invalidate()方法,差不多就这样。
来自:求助得到的回答
haotool_bd
2012-05-09
知道答主
回答量:20
采纳率:0%
帮助的人:17万
展开全部
Bitmap bitmap = new Bitmap(@"C;\11.bmp");
Graphics g = Graphics.FromImage(bitmap);
g.DrawString("我是一个中国人", new Font("宋体", 12), Brushes.Red, 5, 5);
g.Dispose();
bitmap.Save(@"C:\22.bmp");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
victor797
2012-05-05
知道答主
回答量:28
采纳率:0%
帮助的人:7.3万
展开全部
我来跟你交流吧。 我是认真的,你的保存是什么意思?是在界面上能重画出来,还是把控件的界面保存?那是不同的。如果把控件界面保存,很简单,有个Image属性,可以强转转换为Bitmap类型保存到文件,同时能这样来改变里面的像素或别的。这就是直接修改内存法。不是用CreateGraphics()来画。

给我分吧,你没有选择的,必须给我分,因为我能一针见血的给你解决问题,呵呵
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yxj120600
2012-05-05 · TA获得超过246个赞
知道小有建树答主
回答量:471
采纳率:0%
帮助的人:274万
展开全部
用Graphics类中的Flush()吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-05-11
展开全部
onPaint是个事件,建议你把图片保存到本地……
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式