`

MFC的图片按钮

 
阅读更多

利用CBitmapButton类实现位图按钮的两种方法 利用CBitmapButton类实现位图按钮的两种方法:
方法一:
1、在资源编辑的时候选中按钮的 Owner draw 属性,不需要选择 Bitmap 属性.
按钮右键-->Styles-->Owner draw

2、在程序中定义一个CBitmapButton成员变量。
注意:不能使用ClassWizard为按钮映射一个CButton变量,然后改为CBitmapButton,
这么做并不能将按钮直接映射为CBitmapButton类的对象,反而会出现初始化错误

3、使用CBitmapButton::LoadBitmaps装载各种状态的图片,
使用CBitmapButton::SubclassDlgItem关联到想要的按钮,
使用CBitmapButton::SizeToContent函数使按钮适合图片大小。
注意Loadbitmaps一定要在关联到按钮之前进行!

附:添加资源Bitmap的方法:Insert菜单-->Resource -->Resource type:Bitmap-->Import,
之后选择所需的图片就可以了

方法一的例子:
首先,选中按钮的owner Draw属性,在资源中加载两副*.bmp格式的位图,
然后在对话框类中加入:

 

CBitmapButton m_btnX1;//必须放在函数外面才能正常实现
BOOL CXXXXXXX::OnInitDialog()
{
CDialog::OnInitDialog();
m_btnX1.LoadBitmaps(IDB_XXXX_UP,IDB_XXXX_DOWN);//这里是两副位图,鼠标按下和弹起,
 // 也可以只加一个ID资源;
m_btnX1.SubclassDlgItem(IDC_DASEN_X1,this);
m_btnX1.SizeToContent();
}

 

 

方法二:使用CBitmapButton::AutoLoad函数关联到想要的按钮
需要注意:
A、使用CBitmapButton::AutoLoad函数之前不能使用CBitmapButton::LoadBitmaps装载
各种状态的图片,否则会出错。
B、AutoLoad函数完成关联和改变按钮大小的功能。类似于上面CBitmapButton::SubclassDlgItem
和CBitmapButton::SizeToContent函数的功能。
C、CBitmapButton::AutoLoad使用的位图是默认资源ID的,即它会自动装载相关资源位图。
位图的资源ID格式为:
"按钮Caption+U"、"按钮Caption+D"、"按钮Caption+F"、"按钮Caption+X",
分别代表Up、Down、Focus、Disable状态。
如资源编辑时,希望关联的按钮的Caption为Test,
那么其默认装载的位图资源的ID为:"TestU"/"TestD"/"TestF"/"TestX",
注意分号""也是其ID的一部分。
方法二例子:
首先,选中Caption为:"myBitmapButton"按钮的owner Draw属性
其次,添加两个位图资源,并修改其ID分别为:"myBitmapButtonU"和"myBitmapButtonD",这里只添加两个位图
然后在对话框类中加入:

 CBitmapButton m_btnX1;//必须放在函数外面才能正常实现
 BOOL CXXXXXXX::OnInitDialog()
 {
 CDialog::OnInitDialog();
 
 m_btnX1.AutoLoad(IDC_BUTTON1,this);//ID为IDC_BUTTON1的按钮的Caption为:myBitmapButton
 }

 

至此两种方法就都结束了。

 

原文地址:http://yq1518602434.blog.163.com/blog/static/202937084201252011141376/

分享到:
评论

相关推荐

    MFC 按钮上显示png图片, 以及文本

    本文将详细讲解如何在MFC的按钮控件上同时显示PNG图片和文本,以此来提升应用程序的界面美观度。 首先,我们需要了解PNG图片的特点。PNG是一种无损压缩的图像文件格式,支持透明度,这使得它成为UI设计中的首选格式...

    MFC自绘按钮按钮添加图片

    本文将深入探讨如何在MFC应用中实现自定义绘制按钮,并添加背景图片,以提升用户界面的美观度。 首先,我们需要了解MFC中的CButton类。CButton是MFC提供的用于创建和管理Windows标准按钮的类。默认情况下,CButton...

    MFC 自绘按钮显示 PNG 图片

    总结来说,"MFC 自绘按钮显示 PNG 图片"这个实例教给我们如何利用MFC和GDI+在Windows应用程序中创建一个可以显示PNG图像的自定义按钮。通过继承CButton类并覆盖其OnPaint()方法,我们可以实现自定义的绘制逻辑,从而...

    MFC BUTTON按钮控件,设置按钮透明,按钮背景色,文本,按钮显示状态等等

    本篇文章将详细介绍如何利用MFC对按钮控件进行增强,特别是如何设置按钮的透明度、背景色、文本以及显示状态。 首先,`BtnST.cpp`和`BtnST.h`这两个文件很可能包含了自定义的按钮类(CBtnST)的实现和声明。这个类...

    MFC按钮插入图片

    本文将详细介绍如何在MFC中为按钮控件插入图片,提供一个经典而实用的傻瓜式教程。 首先,我们从MFC按钮控件的基本概念讲起。在MFC中,按钮控件被称为CButton类。通过CButton类,开发者可以创建和操作标准的按钮...

    VC/MFC 基于对话框 按钮加载PNG图片

    本教程将详细讲解如何在MFC基于对话框的应用中加载并显示PNG图片,实现按钮的透明背景。 首先,我们需要解决MFC对PNG格式支持的问题。由于MFC原生不支持PNG,我们需要引入第三方库如GDI+或libpng来处理PNG图像。...

    mfc PNG 按钮

    在本文中,我们将深入探讨如何在MFC(Microsoft Foundation Class)框架中集成PNG图像作为按钮。MFC是Microsoft提供的一种C++库,用于简化Windows应用程序的开发,它封装了Windows API,提供了面向对象的编程接口。...

    mfc实现自给按钮,透明按钮

    【自绘按钮与MFC界面】 在MFC编程中,有时我们需要自定义控件的外观,以实现独特的用户界面效果。本篇文章将探讨如何利用MFC的自绘功能(Owner Draw)创建一个透明或XP风格的CXPButton类,以此来定制按钮的样式。 ...

    MFC 为按钮添加图片源码程序下载

    2. **自定义按钮类**:为了实现图片按钮,你需要创建一个自定义的按钮类,继承自CButton。在新的类中,你可以重写或扩展CButton的功能,以便处理图片显示。 ```cpp class CMFCButtonWithImage : public CButton { ...

    MFC界面美化之-按钮美化(重绘按钮)

    这个项目文件是对mfc的按钮进行美化的一个完整工程,主要是利用图片贴图,来达到美化按钮的效果,把对应的对按钮进行重写的类,封装成了mybutton.h,mybutton.cpp。可以下载下来进行复用,我使用的开发软件是VS2022. ...

    【最新】MFC 不规则按钮的实现, 按钮的形状, 根据图片的形状来绘制, 并且重叠的部分, 透明显示

    本教程将深入讲解如何在MFC中实现不规则形状的按钮,使其根据图片的形状进行绘制,并确保重叠部分透明显示。 首先,我们需要了解MFC中的CButton类,它是标准按钮的基本组件。但是,为了实现自定义形状和透明效果,...

    MFC 动态添加按钮

    本篇文章将深入探讨如何在MFC应用中动态添加按钮,并实现按钮的响应函数,以及如何在按钮上显示图片。 首先,我们了解动态添加按钮的基本步骤: 1. **获取窗口句柄**:通常在`OnCreate()`或`OnInitDialog()`函数中...

    MFC对话框界面按钮的多种美化方法

    在MFC中,可以创建一个CBitmap对象来加载图片,然后在OnPaint函数中使用CDC类的DrawBitmap方法将图片绘制到按钮上。为了确保图片适应不同大小的按钮,可能需要使用 StretchBlt 或 DrawStretchDIB 函数进行拉伸或缩放...

    MFC 按钮控件背景色改变

    在MFC中,我们经常会遇到需要自定义控件以满足特定需求的情况,比如改变按钮控件的背景色。本文将详细讨论如何在MFC中实现按钮控件背景色的改变。 首先,我们要了解MFC中的按钮控件通常是CButton类的实例。CButton...

    使用MFC制作图片按钮的程序

    这个“使用MFC制作图片按钮的程序”是一个具体的示例,展示了如何在Visual Studio 2005环境下集成图片到按钮中,增加界面的美观性和用户体验。 首先,我们需要了解MFC中的CButton类。CButton是MFC为Windows API中的...

    MFC按钮上的各种特效

    MFC按钮上的 各种特效,

    mfc自定义按钮类源码

    但是,CButton类默认的功能有限,比如不能直接设置复杂的按钮样式或自定义图片。为了扩展这些功能,我们需要创建一个新的类,继承自CButton,并添加额外的方法和属性。 描述中的“包括鼠标点击,移动方面的消息”...

    [最新] MFC 不规则按钮的实现, 按钮的形状, 根据图片的形状来绘制, 并且重叠的部分, 透明显示_解决了因为GetPix函数, 导致的性能慢的问题

    在本文中,我们将深入探讨如何在MFC(Microsoft Foundation Class)框架中实现不规则形状的按钮,以及如何根据图片的形状来绘制按钮,并处理重叠部分的透明显示。此外,我们还将解决使用`GetPix`函数导致的性能问题...

    不规则图片按钮mfc实现

    在MFC(Microsoft Foundation Classes)框架中,实现不规则图片按钮是一种常见的自定义控件需求,主要用于提升用户界面的美观性和交互性。本教程将详细讲解如何在MFC项目中实现这种功能。 首先,我们需要理解MFC中...

Global site tag (gtag.js) - Google Analytics