0
点赞
收藏
分享

微信扫一扫

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

Sky飞羽 2022-12-07 阅读 60


在写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





举报

相关推荐

0 条评论