winCE下界面中位图加载问题

xueluowutong 2018-08-07 09:20:04
void CEliten_Teach_BoxDlg::Load_bitmap(void)
{
CBitmap mybitmap;
mybitmap.LoadBitmapW(IDB_BITMAP7);
CDC *pdc = GetDC(); // 获取设备环境句柄,便于在GDI上绘图
CDC srcDC; // 加在位图的内存DC
srcDC.CreateCompatibleDC(pdc); // 创建与该窗口兼容的DC,这个DC相当于一个内存缓冲区
srcDC.SelectObject(&mybitmap); // 把对象资源(位图)选入到指定的设备环境DC中
//BOOLBitBlt(int x,int y,int nWidth,int nHeight,CDC*pSrcDC,int xSrc,int ySrc,DWORD dwRop);
/* BitBlt参数:x:目标窗口区域左上角x轴坐标点
y:-----------------y轴坐标点
nWidth:位图宽度
nHight:位图高度
CDC* SrcDC:设备环境指针
xSrc:设备环境的起点x轴坐标,函数从该起点复制位图到目标设备
ySrc:设备环境的起点y轴坐标,函数从该起点复制位图到目标设备
dwRop:光栅操作代码。SRCCOPY:直接复制源设备区域到目标设备中*/
//CRect rect;
//GetClientRect(rect); // 获得窗体大小
pdc->BitBlt(200,0,57,30,&srcDC,0,0,SRCCOPY );//复制srcDC里的位图至本窗口

// 释放资源
mybitmap.DeleteObject();
ReleaseDC(pdc);
ReleaseDC(&srcDC);
/*********************************************************************/
}
上面代码可以在Windows系统能编译通过,可以运行并显示位图;但是在winCE设备下可以编译通过,运行的过程中不显示位图。这个问题困扰我很久了,跪求大神指点
...全文
163 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zgl7903 2018-08-07
  • 打赏
  • 举报
回复
从状态栏 CStatusBar 派生新类, WM_ERASEBKGND 中贴图
xueluowutong 2018-08-07
  • 打赏
  • 举报
回复
我找到原因了,在winCE中加载位图,只能加载到窗口的底层,会被其他的控件覆盖。我想知道在不用图片控件情况下,怎么才能将位图显示在状态栏上面

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧