中易网

为什么InvalidateRect刷新后,位图就不显示了呢?急急急,新手刚入门,老师说必须用win32 api来编。

答案:2  悬赏:50  
解决时间 2021-03-05 21:18
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
static int cxClient, cyClient ;
HDC hdc;
static int i=1;
static HDC hdcmem;//wo kao,wei shen me???!!!
PAINTSTRUCT ps;
HBITMAP hbm;
switch (message)
{
case WM_SIZE:
cxClient = LOWORd (lParam) ;
cyClient = HIWORd (lParam) ;
break ;

case WM_CREATE:
hdc=GetDC(hwnd);
hdcmem=CreateCompatibleDC(hdc);
ReleaseDC(hwnd,hdc);
break;
case WM_PAINT:
hdc=BeginPaint(hwnd,&ps);
if(i==1)
{
hbm=(HBITMAP)LoadImage(NULL,"1.bmp",IMAGE_BITMAP,cxClient,cyClient,LR_LOADFROMFILE);//加载一张指定了路径的bmp图片,此图片大小为63*128,用这个函数之前需要知道这张图的大小,分别填写在第4、5个参数里
}
else if(i==2)
{
hbm=(HBITMAP)LoadImage(NULL,"2.bmp",IMAGE_BITMAP,cxClient,cyClient,LR_LOADFROMFILE);
}
。。。。。
else if(i==10)
{
hbm=(HBITMAP)LoadImage(NULL,"10.bmp",IMAGE_BITMAP,cxClient,cyClient,LR_LOADFROMFILE);
}
SelectObject(hdcmem,hbm);
BitBlt(hdc,0,0,cxClient,cyClient,hdcmem,0,0,SRCAND);//显示这张图
EndPaint(hwnd,&ps);
i++;
if(i==11) i=1;
Sleep(1000);
InvalidateRect(hwnd,NULL,1);
break;

case WM_DESTROY:
PostQuitMessage (0) ;
return 0 ;
default:
return DefWindowProc(hwnd,message,wParam,lParam);
break;
}
return DefWindowProc (hwnd, message, wParam, lParam) ;
}是打算轮流显示营造出动态效果的,但刷新一次后就不显示图了,求大神帮看看啊,急急急,无比感激谢谢。
最佳答案
我感觉在endpaint之后调用 好像不合适吧
endpaint放到invalidateRect后面试试
全部回答
搜一下:为什么InvalidateRect刷新后,位图就不显示了呢?急急急,新手刚入门,老师说必须用win32 api来编。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
我身高172,女朋友156,总感觉她很矮,她眼睛
时尚女人屋地址有知道的么?有点事想过去
北京的交通有多堵?
东京食尸鬼里 金木一直问1000-3等于多少 还
洋葱怎么养在水里?
中国人寿学生18岁保险可得利益的计算全过程
化工厂搬迁,需要高危证吗?和化工安装拆除许
南瑞人家怎么去啊,有知道地址的么
sql中空值是不是默认为0?
PPT如何实现手机与台式机同时播放?
用实验证明"适者生存"的道理
我的东芝优盘坏了
五星蛋糕坊我想知道这个在什么地方
为什么我感觉ultra boost 3.0上脚还没nike
开一家饭店需要考虑哪些因素?
推荐资讯
女性经期喝纯奶好吗?
ipad 文件打开时如何设置关联
flash中所使用的文件类型,分别有什么作用
黑云翻墨未哲山后面一句是什么易与不鸣蝉后面
一生浮沉,一世流芳用法语怎么说
2016年云南二级建造师现场审核时间是什么时候
英氏(天虹商场南山常兴店)在哪里啊,我有事要
蜂蜜是怎么提炼的,蜂王浆呢
苹果手机播放QQ音乐,流量费不?
为什么广州和深圳一样一线城市,可是广州人真
今天有什么足球比赛直播?
qt5 能够替换qwebkit的库有哪些
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?