作者starlife672 (大放颂作者)
看板C_Sharp
标题Re: [问题] DrawImage画面突然当掉(无错误视窗跳出)
时间Thu May 7 02:16:44 2009
※ 引述《kadouin (跑跑卡到阴)》之铭言:
: 我的程式会动态算出位置
: 将一个图片动态的载入画面上
: 大致的程式码是像这样
: Bitmap b=new Bitmap(@"c:\img.jpg");
: Random random=new Random();
: while (true)
: {
: Refresh();
^^^^^^^^^关键在於这一行,无穷loop,会造成MemoryLeak
: for (int i = 0; i < 10; i++)
: {
: x = random.Next(100);
: y = random.Next(100);
: g.DrawImage(b, x, y);
: }
: Thread.Sleep(1000);
: }
:
试试改成下列这样
bool first=false;
private void OnPaint(PaintArgs e)
{
//第一次执行时清空所有垃圾
if(!first) {
first=true;
Refresh();//清空垃圾,并再次进入OnPaint();
return;
}
Bitmap b = new Bitmap(@"c:\img.jpg");
Random random=new Rndom();
for(...........)
{
........
........
........
}
Thread.Sleep(1000);
Refresh();//清空垃圾,并再次进入OnPaint();
}
--
我很可怜,前几天出了场车祸,
对方一下车不清青红皂白的就把我打了一顿,
我问他为什麽打我?他说因为我长的太帅,我很生气!!
因为我觉得我长的一点都不出色...
我抓了个路人来帮我评评理,那路人也打了我一顿,ꘊ为他说我说谎..我招谁惹谁了我!!
※ 编辑: starlife672 来自: 125.230.196.215 (05/07 02:17)