首页 > 其他分享 >关于MFC中resource.h头文件中宏的说明

关于MFC中resource.h头文件中宏的说明

时间:2022-12-07 16:01:41浏览次数:36  
标签:控件 MFC 头文件 对话框 中宏 IDC ID define


在写MFC程序时,当需要动态创建一些控件的时候,需要传递一个ID给相应的控件,比如创建一个按钮

CButton m_bnTestButton;
m_bnTestButton.Create( _T("我的按钮"), WS_VISIBLE|WS_CHILD|BS_PUSHBUTTON, CRect( 10, 10, 80, 40 ), this, IDC_MY_BTN );


    我们知道,通过MFC中工具栏拖动一个控件到相应的容器(比如对话框)上时,MFC会自动生成它的一个不重复的ID。但是我们自定义一个ID,如何保证自己的ID不会和MFC生成的ID重复呢,通过对Resource.h文件分析可得出非常有用的信息,对如何自定义一个与MFC不冲突的ID值非常有指导意义。


以下是MFC生成的一个对话框程序的Resource.h文件

//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by DlgTest20150528.rc
//
#define IDM_ABOUTBOX 0x0010
#define IDD_ABOUTBOX 100
#define IDS_ABOUTBOX 101
#define IDD_DLGTEST20150528_DIALOG 102
#define IDS_MY_BTN 102
#define IDR_MAINFRAME 128
#define IDC_TREE1 1000
#define IDC_TREE2 1002
#define IDC_BUTTON1 1003


// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 129 //下一个资源ID(插入的一些对话框、图片、图标等)
#define _APS_NEXT_COMMAND_VALUE 32771 //下一个命令ID(主菜单、弹出菜单等)
#define _APS_NEXT_CONTROL_VALUE 1004 //下一个控件ID(各种控件ID)
#define _APS_NEXT_SYMED_VALUE 101 //状态栏、工具栏上所用控件与标签
//ID_(菜单项) IDI_(图标) IDM_(菜单项) IDS_(字符串) IDC_(对话框控件) IDW_(鼠标)
#endif
#endif





标签:控件,MFC,头文件,对话框,中宏,IDC,ID,define
From: https://blog.51cto.com/u_15905375/5919634

相关文章

  • MFC按客户区大小获取合适的主窗口大小
    使用GetClientRect与GetWindowRect计算水平、垂直非客户区大小使用GetWindowRect获取主窗口的大小,再通过GetClientRect获取客户端大小,然后通过这两个值计算出水平、垂直......
  • Vscode——#include <Eigen/Core>及#include <Eigen/Dense> compilation terminated.(找不
    一、问题描述检查路径/usr/include中确实存在eigen3/Eigen/Dense的文件夹,该路径已经被写入了IDE的includepath。二、原因分析Eigen被默认安装到了usr/include/eigen3里了(系......
  • MFC-颜色对照表
                ......
  • MFC--BITMAP HBITMAP CBitmap
     区分概念:BITMAP是C++中定义的位图结构体。HBITMAP是Windows中使用的位图句柄。CBitmap是MFC封装的位图类 定义与使用HBITMAP指针从文件中录入指针,得到文件句柄......
  • C++/MFC 算术表达式求值
    C++/MFC算术表达式求值综合实验1算术表达式求值课程名称:《数据结构与算法(C++描述)》实验名称:综合实验1算术表达式求值实验环境:VisualC++/Dev-C++等支持C++......
  • MFC-Edit编辑框控件
     代码SetDlgItemText(IDC_EDIT1,_T("中国人民万岁"));//设置编辑框文本//参数1:编辑框ID//参数2:字符串//MFC函数myedit.SetWindowText(_T("我爱我的祖国"))......
  • MFC-美化控件
    控件的美化就是自绘控件属性:   是否允许自绘可以用别人自绘好的控件:视频教程:​​https://www.bilibili.com/video/BV1d3411f7cw/?vd_source=189e32a0967ed45997385a77......
  • MFC--窗口信息
    获取窗口信息 CWnd*pWnd=GetDlgItem(IDC_STATIC1);HWNDhWnd=pWnd->GetSafeHwnd();//CWnd*转化为HWNDLONGn=::GetWindowLong(hWnd,GWL_STYLE);......
  • C++学习------csetjmp头文件的源码学习
    引言csetjmp是C++对setjmp.h头文件的封装,通过这个头文件提供的工具允许程序员通过提供执行跳转的方法来绕过正常的函数调用和返回规程,从而保留调用环境。其中定义了一些函数......
  • 头文件<numeric>
    累加函数accumulate(first,last,val,op);first和last表示序列(可以是数组、vector、array等)的首尾指针/迭代器,val表示操作的初始值,op表示运算符,进行累加、累减......