VC中的//{{afx_DATA_MAP()是什么意思?
答案:2 悬赏:70 手机版
解决时间 2021-01-04 15:04
- 提问者网友:了了无期
- 2021-01-03 20:46
VC中的//{{afx_DATA_MAP()是什么意思?
最佳答案
- 五星知识达人网友:由着我着迷
- 2021-01-03 22:12
//{{AFX_DATA_MAP
...
//}}AFX_DATA_MAP
组件数据与组件间的映射
(比如你在Edit控件的建立类向导里加入了一个CString的数据)
//{{AFX_MSG_MAP
...
//{{AFX_MSG_MAP
消息与处理函数间的映射
(这个不用说了吧)
...
//}}AFX_DATA_MAP
组件数据与组件间的映射
(比如你在Edit控件的建立类向导里加入了一个CString的数据)
//{{AFX_MSG_MAP
...
//{{AFX_MSG_MAP
消息与处理函数间的映射
(这个不用说了吧)
全部回答
- 1楼网友:神也偏爱
- 2021-01-03 22:40
控件的关联变量,相当于是对控件起了一个名字,操作这个名字就是操作控件,可以通过它对控件的属性和值进行操作
mfc中关联一个控件和变量的时候,可以选择是控件方式还是值方式,如果是控件方式,那么就是这个变量就代表了控件,如果是值方式,那么这个变量就代表了控件中显示的值。比如你说的静态控件,可以与cstatic类型的变量关联,也可以与cstring类型的关联。
其实所谓的关联,只是mfc的一层封装而已,内部还是采用windows sdk来操作的。你如果想深入了解的话,可以去看看windows sdk开发方面的东西,或者也可以深入到mfc的源代码中看看,mfc源代码在安装时有选项。
变量就代表这个控件本身,操作方便,不需要再调用函数获取其句柄
这是对话框的dde和ddv,通过将一个变量与空间关联,可以让框架自动处理处理的交换和验证,不要弄得太玄乎,实际上和getdlgitemint一类的函数类似,只是隐去了而已。
为了控制方便,否则你改一下控件的文本还要用一下getdlgitemtext( int nid, cstring& rstring )来设置一下太麻烦了有了关联变量直接就可以更新到控件,不过要记得update()
给控件关联成员变量可以更方便的操纵控件,改变控件的属性等,增加了程序的可读性,减少了代码量,程序简洁易懂。这个需要在编程实践中慢慢体会。
目的是为了方便你的操作,比如,你给按钮控件关联成员变量m_button;如果你想改变该变量对应按钮上的文字,可以这样:m_button.setwindowtext("新文字");如果不关联,一般这样做:
cbutton *p=(cbutton*)getdlgitem("按钮控件id");p->setwindowtext("新文字");显然前者更方便。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯