VC怎么用位图资源作为主窗口背景 请教各位大神,VC怎么用位图资源作为主窗口背景啊?VC,不是VC++就是没有 类 的。百度找了好多,都是VC++的,看不大懂 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 win32应用程序:函数功能:该函数装载图标,光标,或位图。 函数原型:HANDLE LoadImage( HINSTANCE hinst, LPCTSTR lpszName, UINT uType, int cxDesired, int cyDesired, UINT fuLoad );详细参数参考百度百科 那怎样在bitmap里面插入一张图片啊?我用VS2012开发的 http://bbs.csdn.net/topics/390348152使用LoadImage从资源载入图片 这里面 005.bmp 是文件名吗?我这样做为什么不行?我是在主窗口设置背景图片,要在哪个case里加入这语句?005.bmp的时候提示 警告 warning C4133: “函数”: 从“char [8]”到“LPCWSTR”的类型不兼容 代码亲测:win32 app(unicode) { HBITMAP bmp = (HBITMAP)::LoadImage(hInst, MAKEINTRESOURCE(IDB_CLOSE), IMAGE_BITMAP, 0, 0, 0); if(bmp != NULL) { HDC mem = ::CreateCompatibleDC(hdc); ::SelectObject(mem, bmp); ::BitBlt(hdc, 0, 0, 43, 21, mem, 0, 0, SRCCOPY); ::DeleteDC(mem); ::DeleteObject(bmp); } else { wchar_t err[20]; wsprintfW(err, L"%d\r\n", GetLastError()); OutputDebugString(err); } } IDB_CLOSE 是位图ID吗?我要想在位图里插入自己的图片要怎么做啊?我是这个意思。或者说直接用自己的图片作为背景,不通过设置位图? IDB_CLOSE 是位图ID吗?我要想在位图里插入自己的图片要怎么做啊?我是这个意思。或者说直接用自己的图片作为背景,不通过设置位图?对,IDB_CLOSE是位图ID。 用自己的图片作为背景,需要先把位图作为资源插入到工程中,然后在WM_PAINT中去把位图绘制到窗口上。win32或mfc不像vb那样可以直接指定位图,需要自己去绘制 IDB_CLOSE 是位图ID吗?我要想在位图里插入自己的图片要怎么做啊?我是这个意思。或者说直接用自己的图片作为背景,不通过设置位图?对,IDB_CLOSE是位图ID。 用自己的图片作为背景,需要先把位图作为资源插入到工程中,然后在WM_PAINT中去把位图绘制到窗口上。win32或mfc不像vb那样可以直接指定位图,需要自己去绘制这样的话位图里不是没有任何图片吗?我自己的图片怎么跟位图资源关联?VS2012好像只能插入bitmap。具体的需要怎么做啊?恕我初学者无知能给一下代码加注释吗?感激万分。 好吧。打开工程后,菜单 项目->添加资源->选中Bitmap点击‘导入’按钮,这样这个位图就加入到工程了,此时注意看这个位图有个ID,然后调用我上面的代码,把位图绘制出来 怎样跟踪CoCreateInstance LINK : fatal error LNK1104: cannot open file "?.exe" 关于 粘贴操作API函数的问题 关于贝叶斯网络结构学习的问题 用VC生成的位图为什么是黑色的? ——*-大家想想,有没有过了服务器的期限还能提交表格的办法?-*—— 向DLL传窗口指针出错!(很奇怪) 急!dialogbox 的 怎么让程序在线安装???太难了,大家都来看一看: 100分—Win2000中的标题条 socket下的多线程实现。 c++ MFC 怎么 post 发送消息给网页 并且接收到网页返回的值
函数原型:HANDLE LoadImage(
HINSTANCE hinst,
LPCTSTR lpszName,
UINT uType,
int cxDesired,
int cyDesired,
UINT fuLoad
);
详细参数参考百度百科
使用LoadImage从资源载入图片
这里面 005.bmp 是文件名吗?我这样做为什么不行?我是在主窗口设置背景图片,要在哪个case里加入这语句?
005.bmp的时候提示 警告 warning C4133: “函数”: 从“char [8]”到“LPCWSTR”的类型不兼容
HBITMAP bmp = (HBITMAP)::LoadImage(hInst, MAKEINTRESOURCE(IDB_CLOSE),
IMAGE_BITMAP, 0, 0, 0);
if(bmp != NULL)
{
HDC mem = ::CreateCompatibleDC(hdc);
::SelectObject(mem, bmp);
::BitBlt(hdc, 0, 0, 43, 21, mem, 0, 0, SRCCOPY);
::DeleteDC(mem);
::DeleteObject(bmp);
}
else
{
wchar_t err[20];
wsprintfW(err, L"%d\r\n", GetLastError());
OutputDebugString(err);
}
}
或者说直接用自己的图片作为背景,不通过设置位图?
或者说直接用自己的图片作为背景,不通过设置位图?
对,IDB_CLOSE是位图ID。 用自己的图片作为背景,需要先把位图作为资源插入到工程中,然后在WM_PAINT中去把位图绘制到窗口上。win32或mfc不像vb那样可以直接指定位图,需要自己去绘制
或者说直接用自己的图片作为背景,不通过设置位图?
对,IDB_CLOSE是位图ID。 用自己的图片作为背景,需要先把位图作为资源插入到工程中,然后在WM_PAINT中去把位图绘制到窗口上。win32或mfc不像vb那样可以直接指定位图,需要自己去绘制
这样的话位图里不是没有任何图片吗?我自己的图片怎么跟位图资源关联?VS2012好像只能插入bitmap。
具体的需要怎么做啊?恕我初学者无知能给一下代码加注释吗?感激万分。
打开工程后,菜单 项目->添加资源->选中Bitmap点击‘导入’按钮,这样这个位图就加入到工程了,此时注意看这个位图有个ID,然后调用我上面的代码,把位图绘制出来