请问,要在if当中画图,咋办,用啥,onpaint吗?
if()
{
画图}
保证,画的图不会消失
if()
{
画图}
保证,画的图不会消失
解决方案 »
- 为什么这样写不对
- HttpWebResponse下载问题
- 用datagirdview 数据更新数据库
- 数据绑定事件触发后产生的问题(紧急!!!!!)
- C#如何获得正在运行的应用程序列表,非进程列表?
- 如何使用DataColumn对象!?
- 快捷键的问题
- ★★★★★究竟谁是垃圾,CSDN有史以来最有影响力的两大高手开始辩论★★★★★--上海交大的migthline和亡灵法师alienbat
- 请高手推荐DirectDraw的学习资料。
- asp.net定时器怎么实现?
- Request.Form[].Tostring();取值错误的问题----20110513
- 在C#(后台代码CS文件)中如何取到input的name值。(在线等~~~)
{
Rectangle a_snake;
Graphics pic = pictureBox1.CreateGraphics();
Pen pcolor = Pens.Black;
int ix = 10;
int iy = 10;
for (int j = 1; j < 10; j++)
{
Point i = new Point();
i.X = ix;
i.Y = iy;
int a = 8;
a_snake = new Rectangle(i, new Size(a, a));
pic.DrawRectangle(pcolor, a_snake);
ix = ix + a;
}画好的图形之所以消失,是因为每当对窗体进行操作的时候,都会触发系统消息,通知程序重画所有必要的窗体,具体的说,消息到达后,各个部件或控件自己画自己的,因为你画的图形不是属于控件本身onPaint()事件里,,所以画完之后,你画的图像就没了。所以,要想保持自绘的图形不会消失,只有自己把图形数据保存下来,并且在pictureBox的画图事件里把画图代码添上,比如private void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
//画图代码
}
才能做到。至于数据怎么保存,看自己的,我一般保存在Arrylist里,方便,还支持自动增减,程序好编 。参考:
http://blog.sina.com.cn/s/blog_53aaf7a50100i2s9.html