首页 > 其他分享 >MFC 更改按钮文字颜色

MFC 更改按钮文字颜色

时间:2024-02-19 19:34:25浏览次数:28  
标签:MFC 更改 IDC DDX CMFCAppColorDlg 按钮 pBtnColor ptr

成员变量关联:

private:
    CMFCButton m_btnColorTest;
    CMFCButton* m_pBtnColor;

// CMFCAppColorDlg 对话框


#define DELETE(ptr) do{if (ptr) {delete ptr; ptr = nullptr;}}while(0)


CMFCAppColorDlg::CMFCAppColorDlg(CWnd* pParent /*=nullptr*/)
    : CDialogEx(IDD_MFCAPPCOLOR_DIALOG, pParent)
{
    m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
    m_pBtnColor = new CMFCButton;   // 堆上的对象放在构造函数中初始化,保证 DDX_Control 时对象已经被创建,
                                    // 放 OnInitDialog() 中不行,滞后于 DDX_Control 了,会有问题。
}

CMFCAppColorDlg::~CMFCAppColorDlg()
{
    DELETE(m_pBtnColor);
}

void CMFCAppColorDlg::DoDataExchange(CDataExchange* pDX)
{
    CDialogEx::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_BUTTON1, m_btnColorTest); // 关联变量
    DDX_Control(pDX, IDC_BUTTON2, *m_pBtnColor);  // 关联变量
}

BEGIN_MESSAGE_MAP(CMFCAppColorDlg, CDialogEx)
    ON_WM_SYSCOMMAND()
    ON_WM_PAINT()
    ON_WM_QUERYDRAGICON()
    ON_BN_CLICKED(IDC_BUTTON1, &CMFCAppColorDlg::OnBnClickedButton1)
    ON_BN_CLICKED(IDC_BUTTON2, &CMFCAppColorDlg::OnBnClickedButton2)
END_MESSAGE_MAP()

按钮事件:


void CMFCAppColorDlg::OnBnClickedButton1()
{
    m_pBtnColor->SetTextColor(RGB(255, 0, 0));
    Invalidate();   // MFC刷新界面
}


void CMFCAppColorDlg::OnBnClickedButton2()
{
    m_pBtnColor->SetTextColor(RGB(0, 0, 0));
    Invalidate(); // // MFC刷新界面
}

标签:MFC,更改,IDC,DDX,CMFCAppColorDlg,按钮,pBtnColor,ptr
From: https://www.cnblogs.com/huvjie/p/18021786

相关文章

  • Tomcat9 运行模式更改为APR模式
    Tomcat支持三种接收请求的处理方式:BIO、NIO、APR软件版本:Tomcat9.0.85操作系统:Rockylinux8.9BIO由于每个请求都要创建一个线程来处理,线程开销比较大,不能再高并发的场景,性能也是最低的。NIO是一个基于缓冲区、并能提供非阻塞I/O操作的JavaAPI,比传统的bio更好的并发性能。......
  • ABAP:ME21N状态栏添加自定义按钮
    SE38:LMEGUICJL---->代码增强点ENHANCEMENT1Z_SEND_PO_TO_OA."activeversionIFim_fcode='OA'.DATA:ls_returnTYPEzscomm03,lv_bsartTYPEekko-bsart.DATA:lv_statusTYPEzshr0004,ls_ekkoTYPEekko.CLEARim......
  • powercfg是一个Windows操作系统中的命令行工具,用于管理和配置电源设置。通过使用power
    powercfg是一个Windows操作系统中的命令行工具,用于管理和配置电源设置。通过使用powercfg命令,用户和系统管理员可以查询、更改、导出、导入电源计划设置,检查电池状态,以及分析系统能耗情况等。这个工具非常有用,尤其是在需要优化电池使用时间、调整电源计划以提高性能或节能时。为......
  • 如何关闭提示是否允许来自未知发布者的此应用对你的设备进行更改
    1.方法1.1打开控制面板1.2进入安全和维护1.3选择用户账户控制,并将安全等级降到最低即可2.参考文献:关闭win10安全警告......
  • MFC 自定义消息
    ▲Demo示例新建基于对话框的Demo程序。头文件://自定义数据类型,用来测试消息数据传递typedefstructtagStudent{CStringName;intAge;}Student_t;//Dlgheaderpublic:afx_msgvoidOnBnClickedButtonCustomMsg();afx_msgLRESULTOnCusto......
  • 注册表监控工具可以近乎实时地监控注册表更改情况,让您不会错过任何问题。通过可自定义
    注册表监控工具可以近乎实时地监控注册表更改情况,让您不会错过任何问题。通过可自定义通知系统,您可以更轻松地及时了解用户操作或软件安装所引起的注册表更改。会在更改发生的当下显示更改(并让您进行检查和分析),而不是按特定间隔汇总活动数据,它还提供逐行精细数据,以更准确地查看注......
  • 24/02/02 按钮
    题目描述有一排按钮,编号为\(0\simn-1\)。现在有两种操作:\(p\)\(l\)\(r\):表示把编号在\([l,r]\)范围内的按钮都按下去。\(r\)\(l\)\(r\):表示把编号在\([l,r]\)范围内的按钮都提一格。保证这个操作与之前某个按下操作的区间一样,且一次按下只会释放一次。如下......
  • Teamcenter SOA开发如何添加更改BOM的子件
    1、关键是addOrUpdateChildrenToParentLine方法2、主要执行完addOrUpdateChildrenToParentLine,要对BOMWindow进行保存!voidtest(){ try{ DataManagementServicedmService=DataManagementService.getService(AppXSession.getConnection()); ServiceDataserviceData......
  • react 点击按钮 div隐藏显示 添加展开收起动画效果
    js代码const[collapse,setCollapse]=useState(false)  const[showBack,setShowBack]=useState(false)  constchangeCollapse=()=>{//获取展开收起目标元素    constheaderDes=document.querySelector('.phone_header_des');  ......
  • Qt按钮字体旋转
    #include"mainwindow.h"#include"ui_mainwindow.h"classRotatedButton:publicQPushButton{public:explicitRotatedButton(constQString&text,QWidget*parent=nullptr):QPushButton(text,parent){}b......