zoukankan      html  css  js  c++  java
  • MFC的CBitmapButton的使用指南

    注意:此按钮使用前应该将按钮的属性:Owner Draw->True

    注意:此按钮使用前应该将按钮的属性:Owner Draw->True

    注意:此按钮使用前应该将按钮的属性:Owner Draw->True

    一、语法

    class CBitmapButton : public CButton
    

    二、函数

    “属性” 描述
    CBitmapButton::AutoLoad 将对话框中的按钮与 类的对象关联,按 (加载) 位图,并调整按钮大小以适应 CBitmapButton 位图。
    CBitmapButton::LoadBitmaps 通过从应用程序的资源文件加载一个或多个命名位图资源并将位图附加到对象来初始化 对象。
    CBitmapButton::SizeToContent 调整按钮的大小以容纳位图。

    1、函数:LoadBitmaps

    BOOL CBitmapButton::LoadBitmaps(UINT nIDBitmapResource,
    	UINT nIDBitmapResourceSel, UINT nIDBitmapResourceFocus,
    	UINT nIDBitmapResourceDisabled)
    

    函数接受四个参数,也就是位图资源的ID,分别对应如下四个状态 :

    • 常规状态
    • 按下状态
    • 焦点状态
    • 禁用状态

    当按钮处于不同状态就会自动切换到对应的图标显示。

    2、函数:SizeToContent

    调用此函数,将位图按钮的大小调整为位图的大小。

    三、使用方法

    具体的使用方法如下:

    // 在头文件中 声明一个CBitmapButton对象
    CBitmapButton m_BitmapBtn;
    
    // 在初始化函数中初始化对象
    m_BitmapBtn.LoadBitmaps(IDB_START_BITMAP);  // bitmapID
    m_BitmapBtn.SubclassDlgItem(IDC_BUTTON1, this);// 按钮ID
    m_BitmapBtn.SizeToContent();
    

    如上为基本用法,也可以在按钮的点击函数中动态修改图片,如下:

    void CSplashDlg::OnBnClickedButton1()
    {
    	// TODO: 在此添加控件通知处理程序代码
    	if (true)
    	{
    		m_BitmapBtn.LoadBitmaps(XXXXXXXXXXX);
    		m_BitmapBtn.Invalidate();
    	}
    	else
    	{
    		m_BitmapBtn.LoadBitmaps(YYYYYYYYYYY);
    		m_BitmapBtn.Invalidate();
    	}
    }
    

    PS:调用Invalidate是为了让图像刷新。

  • 相关阅读:
    初试Shell脚本
    iOS分类Category探索
    cocoaPods安装爬坑总结
    关于FFmpeg工具的使用总结
    关于Boost在工程下的配置
    关于Phabricator Arcanist以及提交项目代码
    关于visual studio的一些日常总结
    关于Python在Linux、Mac和Windows上的安装方法总结
    TextSwitcher 文本切换器的功能与用法
    Android必知必会-App 常用图标尺寸规范汇总
  • 原文地址:https://www.cnblogs.com/Abraverman/p/15223564.html
Copyright © 2011-2022 走看看