vc6下使用BITMAP的问题。

jimlei76 2004-07-15 01:09:53
我在一个对话框中加入一个bitmap,编辑的时候看到的图是色彩丰富的(从别的地方copy来的图)。当把这个图粘贴到bitmap资源文件中,存盘,编译后,图片的颜色就损失了很多,好象只有几种颜色了(比如淡红会变成红色)。
请问:1.产生这种情况的原因?
2.如何解决。(用BitBlt()不方便。)
...全文
213 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jimlei76 2004-07-15
  • 打赏
  • 举报
回复
感谢各位大侠!
我也太粗新了.对import后的提示信息没有仔细看.
在集成环境中不能编辑这个导入的图片,但是是可在程序中以使用import进来的bitmap的.
非常感谢!问题已经解决.
pomelowu 2004-07-15
  • 打赏
  • 举报
回复
小三的代码是用来读文件的,读资源的话要改一下:
HBITMAP hbm = (HBITMAP)::LoadImage(AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDB_BITMAP),
IMAGE_BITMAP, //按位图格式
0,0, // cx,cy
LR_CREATEDIBSECTION | LR_LOADMAP3DCOLORS );
pomelowu 2004-07-15
  • 打赏
  • 举报
回复
用LoadImage读入就可以读真彩的图片了。但是要看你把这个位图用在什么地方了,显示在DC上恐怕还要用BitBlt之类的函数
快乐鹦鹉 2004-07-15
  • 打赏
  • 举报
回复
因为VC中bitmap资源只支持256色,所以你粘贴彩色也会过滤掉。
可以用import的方式,将外部的彩色位图文件导入到位图资源中就可以了。但用VC的bitmap资源无法打开,不过这不要紧
lixiaosan 2004-07-15
  • 打赏
  • 举报
回复

HBITMAP hbmp;
hbmp= (HBITMAP)::LoadImage( AfxGetInstanceHandle(),
"bitmap1.bmp",IMAGE_BITMAP,0,0,
LR_LOADFROMFILE);
pomelowu 2004-07-15
  • 打赏
  • 举报
回复
VC的资源文件默认只有256色,如果添加真彩肯定会有颜色失真的
lixiaosan 2004-07-15
  • 打赏
  • 举报
回复
当把这个图粘贴到bitmap资源文件中

-----------------------------------

什么叫粘贴到资源文件中?

15,978

社区成员

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

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