永发信息网

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
消息与处理函数间的映射
(这个不用说了吧)
全部回答
  • 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("新文字");显然前者更方便。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯