for(i=0;i<100;i++)
{
for (j=0;j<100;j++)
{
beijin[i][j]=(HBITMAP)LoadImage(NULL,"a:\\01.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
SelectObject(MemDC,beijin[i][j]);
BitBlt(dc.m_hDC,i*32,j*32,32,32,MemDC,0,0,SRCCOPY);
}
}
{
for (j=0;j<100;j++)
{
beijin[i][j]=(HBITMAP)LoadImage(NULL,"a:\\01.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
SelectObject(MemDC,beijin[i][j]);
BitBlt(dc.m_hDC,i*32,j*32,32,32,MemDC,0,0,SRCCOPY);
}
}
http://community.csdn.net/Expert/TopicView.asp?id=4297690GDI资源不足
{
for (j=0;j<100;j++)
{
beijin[i][j]=(HBITMAP)LoadImage(NULL,"a:\\01.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
HBITMAP hOld = (HBITMAP)SelectObject(MemDC,beijin[i][j]);
BitBlt(dc.m_hDC,i*32,j*32,32,32,MemDC,0,0,SRCCOPY);
SelectObject(MemDC, hOld);
DeleteObject(beijin[i][j]);
}
}
不过你这个位图数组的初始化最好放在其他地方,这样只要装载位图一次就行了。
beijin[i][j]=(HBITMAP)LoadImage(NULL,"a:\\02.bmp,IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
中不断的改变与增加位图对像 然后在Onpaint中显示出来 这样为什么会程序崩溃?有没解决的方法?
---------------------------------------------------------
注:
然而 在OnPaint中不加入循环与数组也可 我的程序只希望在窗体上画出我指定的图形。
beijin=(HBITMAP)LoadImage(NULL,"a:\\01.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
SelectObject(MemDC,beijin);
BitBlt(dc.m_hDC,i*32,j*32,32,32,MemDC,0,0,SRCCOPY);
这样也可 但是在画出后 不能刷屏 移动 或遮隐之后 图形就会没有了 请问如何解决?让图形持继刷新.
beijin[i][j]=(HBITMAP)LoadImage(NULL,"a:\\01.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
完全是这句语句导致。不知道为何会这样。请大家帮助一下.