可以双击button写代码,除了按钮其他的右击
删掉双击出不来
子类化:扩展控件的功能
重写控件的过程函数实现自己的功能,核心函数 SetWindowLong
MFC中子类化
- 创建新的类,继承MFC对应的控件类
- 在新的类中实现所需要的逻辑代码
- 为对应的控件创建对应的MFC控件类的变量,将变量类型改成自己新创建的类
DDX
void CMFCApplication1Dlg::DoDataExchange(CDataExchange* pDX)
{
CDialogEx::DoDataExchange(pDX);
DDX_Control(pDX, IDC_EDIT1, EDT_GET);
DDX_Control(pDX, IDC_EDIT2, EDT_SHOW);
DDX_Text(pDX, IDC_EDIT1, strint);
DDX_Text(pDX, IDC_EDIT2, strput);
}
CString特殊函数介绍
GetBufferSetLength()
申请缓冲区
ReleaseBuffer()给字符串末尾加
'\0'
UpdateData(BOOL)
显示前需要调用
BOOL UpdateData( BOOL bSaveAndValidate = TRUE );
TRUE:数据从控件到成员变量
FALSE:数据从成员变量到控件
- MFC中控件使用的三种方式
1)SDK的方法 (不常用,也不推荐)
MFC底层调用Windows SDK的API,可用SDK的方法也可以操作控件。
2)DDX – 控件绑定简单变量,通过updatedata进行数据交换(简单控件,文本框,单选框,复选框)
3)通过MFC提供的类来操作对应的控件
CEdit, CButton, CCombobox, CListBox, CListCtrl, CProgressBar, CTreeCtrl
CTreeCtrl:可以像windows显示文件一样显示