社区
界面
帖子详情
如何使用CBitmapButton,直接从文件读取位图
yan_zg
2006-12-07 03:02:44
CBitmapButton,可以读取BMP资源, 并显示为按钮的四个状态, 有没有办法直接将位图文件显示到按钮, 即如何将位图文件转换为BMP资源, 等待
...全文
440
14
打赏
收藏
如何使用CBitmapButton,直接从文件读取位图
CBitmapButton,可以读取BMP资源, 并显示为按钮的四个状态, 有没有办法直接将位图文件显示到按钮, 即如何将位图文件转换为BMP资源, 等待
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
covsno
2007-01-05
打赏
举报
回复
楼主给点分
covsno
2007-01-05
打赏
举报
回复
class BitmapButton1 : public CBitmapButton
BOOL BitmapButton1::LoadBitmaps(LPCTSTR lpszBitmapResource,
LPCTSTR lpszBitmapResourceSel ,
LPCTSTR lpszBitmapResourceFocus ,
LPCTSTR lpszBitmapResourceDisabled)
{
if(lpszBitmapResource==NULL)
return FALSE;
HBITMAP hbitmap=(HBITMAP)LoadImage(NULL,lpszBitmapResource,
IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);
if(hbitmap==NULL)return FALSE;
if (m_bitmap.m_hObject)
m_bitmap.Detach();
m_bitmap.Attach(hbitmap);
::CloseHandle(hbitmap);
hbitmap=NULL;
hbitmap=(HBITMAP)LoadImage(NULL,lpszBitmapResourceSel,
IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);
if(hbitmap!=NULL)
{
if (m_bitmapSel.m_hObject)
m_bitmapSel.Detach();
m_bitmapSel.Attach(hbitmap);
::CloseHandle(hbitmap);
hbitmap=NULL;
}
hbitmap=(HBITMAP)LoadImage(NULL,lpszBitmapResourceFocus,
IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);
if(hbitmap!=NULL)
{
if (m_bitmapFocus.m_hObject)
m_bitmapFocus.Detach();
m_bitmapFocus.Attach(hbitmap);
::CloseHandle(hbitmap);
hbitmap=NULL;
}
hbitmap=(HBITMAP)LoadImage(NULL,lpszBitmapResourceDisabled,
IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);
if(hbitmap!=NULL)
{
if (m_bitmapDisabled.m_hObject)
m_bitmapDisabled.Detach();
m_bitmapDisabled.Attach(hbitmap);
::CloseHandle(hbitmap);
hbitmap=NULL;
}
return TRUE;
}
BOOL BitmapButton1::LoadBitmaps(UINT nIDBitmapResource,
UINT nIDBitmapResourceSel,
UINT nIDBitmapResourceFocus ,
UINT nIDBitmapResourceDisabled )
{
if(nIDBitmapResource==NULL)
return FALSE;
m_bitmap.LoadBitmap(nIDBitmapResource);
if(nIDBitmapResourceSel!=NULL)
m_bitmapSel.LoadBitmap(nIDBitmapResourceSel);
if(nIDBitmapResourceFocus!=NULL)
m_bitmapFocus.LoadBitmap(nIDBitmapResourceFocus);
if(nIDBitmapResourceDisabled!=NULL)
m_bitmapDisabled.LoadBitmap(nIDBitmapResourceDisabled);
return TRUE;
}
covsno
2007-01-05
打赏
举报
回复
...
yan_zg
2006-12-07
打赏
举报
回复
继续关注
xyh2007
2006-12-07
打赏
举报
回复
顶!!!!!!
Stefine
2006-12-07
打赏
举报
回复
提供个思路,看可行不?
仔细看看.rc文件,用notepad打开看
自己模仿实现 用ID与位图关联
也就是RC文件如何实现那个关联功能的,自己去实现
xdlous
2006-12-07
打赏
举报
回复
好像不行,
没有直接调用CBitmap的接口
期待高手
yan_zg
2006-12-07
打赏
举报
回复
本人初衷是, 使用CBitmapButton来完成状态效果, 但不想在资源中引入bmp, 希望直接读取位图文件, 用户可以方便修改, 而CBitmapButton只有一个ResourceID接口, 不知如何是好了
wsb_8224
2006-12-07
打赏
举报
回复
CBitmapButton* mbutton[5];
UINT mID;
mID=0x00ff;
int i;
for(i=0;i<5;i++)
{
mbutton[i]=new CBitmapButton;
mbutton[i]->Create(NULL,WS_CHILD|BS_OWNERDRAW|WS_VISIBLE,CRect(50+48*i,50,50+48*(i+1),98),this,mID+i);
mbutton[i]->LoadBitmaps(IDB_BITMAP1+i); //可以有4幅Bitmap,先在ResourceView中创建好。
mbutton[i]->RedrawWindow();
mbutton[i]->ShowWindow (SW_SHOW);
mbutton[i]->GetDlgCtrlID();//获得控件的ID。
}
/*RECT rect[5];
int i;
for(i=0;i<5;i++)
{
mbutton[i]->GetWindowRect(&rect[i]);
ScreenToClient(&rect[i]);
}*/可以得到这5个按钮的RECT。
yan_zg
2006-12-07
打赏
举报
回复
感谢几位, 如果能用上CBitmapButton::LoadBitmaps(), 就更好了
aa3000
2006-12-07
打赏
举报
回复
进来接分
xuzheng318
2006-12-07
打赏
举报
回复
hBmp = (HBITMAP)::LoadImage(AfxGetInstanceHandle(),"d:\\check.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE ¦LR_CREATEDIBSECTION);
wsb_8224
2006-12-07
打赏
举报
回复
HBITMAP hBitmap = (HBITMAP)::LoadImage(NULL, 文件名, IMAGE_BITMAP, 0,0,LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);
((CButton*)GetDlgItem(CButton控件ID))->SetBitmap(hBitmap);
mynamelj
2006-12-07
打赏
举报
回复
HBITMAP hBmp = (HBITMAP)::LoadImage(NULL, "c:\\aa.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
VS2013 MFC
使用
位图
美化对话框
本文介绍如何
使用
位图
在VS2013 MFC中美化对话框及按钮控件。首先通过在OnPaint消息函数中加载
位图
实现对话框背景的美化。其次介绍了如何为按钮控件添加四种状态的
位图
资源,以实现不同状态下的视觉效果。
MFC 图片按钮的实现
本文介绍了在MFC中实现图片按钮的三种方法:C
Bitmap
Button
、GDI+和C
Button
ST。C
Bitmap
Button
适合添加bmp
位图
,但其他图片可能有兼容性问题;GDI+方式需要设置透明并添加相关头文件和库;C
Button
ST在某些情况下会导致异常,需要调整按钮属性。三种方法各有特点,但作者最终选择了Qt进行项目开发。
图标对话框
本文介绍了在对话框上
使用
图像的四种方法,包括
使用
静态图像控件、C
Bitmap
Button
类
位图
按钮、重载OnPaint()函数以及
使用
Microsoft Forms 2.0 Image ActiveX控件。同时探讨了真彩色图像的替代方案。
易语言源码易语言导出收藏夹源码
易语言源码易语言导出收藏夹源码
汽车电子基于中央计算与区域控制的整车EE架构设计:域划分标准及五大核心域协同机制
内容概要:本文详细阐述了现代汽车电子电气架构(EE架构)中的整车拓扑与域划分设计规范,重点介绍中央计算单元(CCU)、区域控制器(Zone)及五大核心域(智驾域、座舱域、车身域、动力域、底盘域)的架构定义、功能职责、关键技术要求与演进趋势。文章强调“逻辑归域、物理归Zone”的分层设计理念,解析了各域在不同架构形态下的协同机制与接口关系,涵盖算力配置、功能安全(ASIL等级)、信息安全、电源管理、通信架构等关键要素,并展望舱驾融合、线控化、800V高压平台、端到端智驾等未来发展方向。; 适合人群:具备汽车电子、车辆工程或相关专业背景,从事EE架构、域控制器开发、整车系统设计等工作1-5年的工程师和技术管理人员。;
使用
场景及目标:①指导整车EE架构的设计与优化,明确域与Zone的职责边界;②支持域控制器选型、算力规划与安全等级定义;③推动平台化、标准化架构落地,提升系统集成度与可扩展性;④把握智能化、电动化趋势下的技术演进方向。; 阅读建议:此资源技术深度较高,建议结合实际项目背景阅读,重点关注各域的接口定义、安全要求与架构演变路径,宜配合系统架构图、信号流图等工具辅助理解,并在团队内开展专题研讨以促进共识形成。
界面
15,975
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章