首页 > 其他分享 >无涯教程-MFC - Bitmap Button函数

无涯教程-MFC - Bitmap Button函数

时间:2023-12-11 17:32:25浏览次数:29  
标签:MFC 对话框 bitmapStart 步骤 Button 无涯 buttonStart 按钮 BN

位图按钮在其脸上显示图片或图片和文本,这通常是为了使按钮略显,使用从CButton派生的 CBitmapButton类创建位图按钮。

这是CBitmapButton类中的方法的列表。

Sr.No. Name & 描述
1

AutoLoad

将对话框中的按钮与CBitmapButton类的对象相关联,按名称加载位图,并调整按钮的大小以适合位图。

2

LoadBitmaps

通过从应用程序的资源文件中加载一个或多个命名位图资源并将位图附加到对象来初始化对象。

3

SizeToContent 

它将按钮的大小调整为位图的大小。

这是位图按钮控件的消息映射列表-

Message Map entry 描述
BN_CLICKED ON_BN_CLICKED( <id>, <memberFxn> ) 单击按钮时,框架将调用此函数。
BN_DISABLE ON_BN_DISABLE( <id>, <memberFxn> ) 禁用按钮后,框架将调用此函数。
BN_DOUBLECLICKED ON_BN_DOUBLECLICKED( <id>, <memberFxn> ) 双击按钮时,框架调用此函数。
BN_PAINT ON_BN_PAINT( <id>, <memberFxn> ) 当应用程序请求重新绘制按钮时,框架调用此函数。

让无涯教程通过创建一个新项目来研究一个简单的示例。

步骤1 - 从"Add Resource"对话框中添加位图。

Add Resource Dialog

步骤2 - 选择位图,然后单击新建。

Select BitmapButton

步骤3 - 设计位图,并将其ID更改为IDB_BITMAP_START,如上所示。

步骤4 - 在对话框中添加一个按钮,并为该按钮添加控件变量m_buttonStart。

步骤5 - 在头文件中添加一个位图变量,现在,您可以看到以下两个变量。

CBitmap m_bitmapStart;
CButton m_buttonStart;

步骤6 - 修改您的OnInitDialog()方法,如以下代码所示。

m_bitmapStart.LoadBitmap(IDB_BITMAP_START);
HBITMAP hBitmap = (HBITMAP)m_bitmapStart.GetSafeHandle();
m_buttonStart.SetBitmap(hBitmap);

步骤7 - 编译并执行上述代码后,您将看到以下输出。

BitmapButton Output

参考链接

https://www.learnfk.com/mfc/mfc-bitmap-button.html

标签:MFC,对话框,bitmapStart,步骤,Button,无涯,buttonStart,按钮,BN
From: https://blog.51cto.com/u_14033984/8776155

相关文章

  • C++ Qt开发:PushButton按钮组件
    Qt是一个跨平台C++图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QPushButton按钮组件的常用方法及灵活运用。QPushButton是Qt框架中用于创建按钮的组件类,是QW......
  • 无涯教程-MFC - 库资源
    库是一组功能,类或其他资源,可用于需要已经实现的实体的程序,而无需了解这些功能,类或资源是如何创建的或如何创建的功能,库使程序员可以轻松地使用由另一个人或公司创建的函数,类和资源等,并相信此外部源是可靠且高效的。库分为两大类-静态库动态库静态库静态库是一个文件,其中包含......
  • 无涯教程-MFC - GDI
    Windows提供了在设备上下文中使用的各种绘图工具,它提供了用于绘制线条的笔,用于填充内部的画笔以及用于绘制文本的字体,MFC提供了等效于Windows中绘图工具的图形对象类。Drawing绘制设备上下文是Windows数据结构,其中包含有关设备(例如显示器或打印机)的图形属性的信息。所有绘图......
  • 无涯教程-MFC - 网络编程
    Microsoft提供了许多用于对客户端和服务器应用程序进行编程的API,正在为互联网编写许多新应用程序,并且随着技术,浏览器功能和安全选项的变化,将编写新类型的应用程序。MFC提供了一个CSocket类,用于使用WindowsSockets编写网络通信程序。这是CSocket类中方法的列表。Sr.No.Name......
  • 无涯教程-MFC - 文件系统
    在本章中,无涯教程将讨论文件系统的各个组成部分。Drives驱动驱动器是连接到计算机的物理设备,因此它可以存储信息,逻辑磁盘,逻辑卷或虚拟磁盘(简称VD或vdisk)是一种虚拟设备,可在计算机系统中的一个或多个物理磁盘驱动器上提供可用存储区域。驱动器可以是硬盘,CDROM,DVDROM,闪存(USB......
  • 无涯教程-MFC - 消息和事件
    应用程序由各种对象组成,大多数情况下,计算机上运行着多个应用程序,并且不断要求操作系统执行一些任务。Map消息由于Windows是面向消息的操作系统,因此Windows环境的大部分编程都涉及消息处理,每一个事件,例如一个键盘或鼠标点击发生时,一个消息被发送到该应用程序,然后必须处理该事件......
  • 无涯教程-MFC - 窗口控件
    Windows控件是用户可以与之交互以输入或操作数据的对象,它们通常出现在对话框或工具栏上。Sr.No.Controls&描述1StaticControl静态Static控件向用户显示信息,它可以用于显示颜色,几何形状或图片,如图标,位图或动画。2AnimationControl动画控件是一个以AVI格式显示音频剪......
  • MFC对话框显示时背景闪烁
    在显示一个对话框时,可以在WM_PAINT消息处理函数中绘制窗口的背景色。但会出现一种情况,在还未执行完OnPaint函数,对话框已经先显示出白色窗体,如下:还未绘制窗体,背景色先被显示。解决办法:1、添加WM_CTLCOLOR消息。2、在消息响应函数中添加如下代码:1HBRUSHCZGDlg::OnCtlColor......
  • 无涯教程-MFC - 控件管理
    在MFC应用程序中,以可视方式将控件添加到应用程序后,如果要在代码中引用它,则可以基于该控件或与该控件关联来声明变量。MFC库允许您为应用程序中使用的某些控件声明值或控件变量的两种类型的变量。一个变量用于存储在控件中的信息,也称为ControlVariable/Instance.另一个变量称......
  • MFC窗口闪烁问题
    本文引自:《VC窗口闪烁问题的解决》概述一般的windows复杂的界面需要使用多层窗口而且要用贴图来美化,所以不可避免在窗口移动或者改变大小时候出现闪烁。闪烁产生的原因原因一:如果熟悉显卡原理的话,调用GDI函数向屏幕输出的时候并不是立刻就显示在屏幕上,而是写到了显存里,显卡......