【发布时间】:2017-10-23 20:10:42
【问题描述】:
如何让LoadImage(); 使用可变文件路径?我在变量bg 中有所需的文件路径,我正在调用该函数:bmp = LoadImage(hInst,bg,IMAGE_BITMAP,640,480,LR_LOADFROMFILE);
然而bmp 与BitBlt(hDC,0,0,640,480,memDC,0,0,SRCCOPY); 一起使用时不会呈现任何图像
如果我不能使用LoadImage();,有什么等价物可以处理非常量文件名?
[编辑]
显然,错误是由另一段代码引起的,而不是 LoadImage() 函数。不服气。
【问题讨论】:
-
当
LoadImage(hInst,bg,IMAGE_BITMAP...被调用时,bg[]是什么?没有调用md0()来填充它。 -
应用程序是否崩溃,或者您的图像根本不显示?您确定您的计时器正常触发吗?
-
如果你想找出你的程序出了什么问题,你应该调试它。如果今天不再调试程序,程序员为什么还要调试?
-
您的
WM_PAINT正在泄漏内存(您没有恢复被SelectObject()替换的HBITMAP。您必须在调用DeleteDC()之前再次调用SelectObject()),并使用PostMessage()触发油漆处理程序是错误的。请改用InvalidateRect(),并让操作系统在准备好时触发WM_PAINT。 -
请提供minimal reproducible example。故意难以阅读的代码(例如通过函数指针的间接函数调用)不是很有帮助。