VC++学习笔记1-类向导的理解

VC的难点之一就是代码的组织问题,根据个人理解,整理如下学习,水平有限。错误难免,欢迎纠正。

一、 程序入口

**APP类(这里是CUpdateAppApp)的虚方法Initinstance()定义程序入口

 

选择InitInstance,并点击“编辑代码”,会出现相应的代码


二、 类向导

(一)命令标签

先选对象ID,后选择消息,然后“添加处理程序”,向导会在成员函数中加入相应的方法。你只需要上句该成员函数就可以编辑代码了。


加灰色线条的例子:ON_BN_CLICKED就是消息名,OnBnClickedCancel就是成员函数

IDCANCEL就是对象ID,并对应上图

()消息标签

 

消息类型通过“搜索消息”的下拉箭头选择(如下图)

上图中的WM_PAINT对应的是OnPaint()函数(这是向导给的)

先选择消息类型并选择消息,后“添加处理程序”,后编辑代码这样才能执行该消息。

代码中的展示


ON_WM_PAINT对应OnPaint是向导自动给的

系统消息的注意下图(这里做了比较,重点在“系统消息”上),

使用了afx_msg的前缀,并使用了DECLARE_MESSAGE_MAP


 对应的MAP如下(系统消息部分)

对应实现代码

(三)虚函数

使用方法参考(二)消息标签部分。

函数声明使用了virtual 前缀;实现代码中使用了父类的方法。


()成员变量

  该类的所有变量声明

()成员方法

  该类的所有函数方法。前面的命令、消息、虚函数都是使用的函数来处理的。这里都有展示。

三、 DDX DDV使用

  适用于窗口控件(对象ID)与自定义类的关联。

(一) 首先可以通过类向导新建类,并定义响应的虚函数、消息等方法。

添加类可以实现红色框中的四种类型或C++的一般类型。

上图中的类CSafeEdit是基于MFC的类,DefwindowsProc是重写的虚函数

代码如下

(二) 在窗口类中声明该类的类型

如上图的CSafeEdit

 (三) 在窗口上使用虚方法DoDataExchange


在定义里实现给方法的对应


IDC_EDIT2就是该窗口的控件,它对应的就是自定义类的变量m_safeedit

m_safeedit所调用的所有方法就会相应的影响IDC_EDIT2对象在窗口类的的展示效果。

同理:该变量可对应与多个控件,只要是加入DDX_即可。















 


  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值