1.MFC的“匈牙利标识符命名法”,这是一个约定,可以增加代码的可读性:

  • 声明或定义了一个类,那么这个类可以以“C”(class)为前缀,如CHelloWorldDlg类;
  • 定义一个无符号型的局部变量,可以用“u”(unsigned)为前缀,如UINT uPort; ULONG uFlags;
  • 如果是int或long类型的变量,则以“n”为前缀;
  • DWORD类型的变量前缀为“dw”;
  • 字符数组以“sz”作为前缀;
  • CString类的对象以“str”作为前缀;
  • 指针以“lp”或“p”(long pointer或pointer,在WIN32环境下这两种指针并没有什么差别)作为前缀;
  • 引用以“r”为前缀;
  • 布尔型变量以“b”为前缀;
  • 句柄型的变量以“h”(handle)作为前缀。
  • 如果变量是全局的,那么以“g_”(global)开头,如BOOL g_bFlags;
  • 如果是类的成员变量则以“m_”(member)开头,如HICON m_hIcon;。

2.对话框资源与类的绑定:

 enum { IDD = IDD_HELLOWORLD_DIALOG };

3.成员函数:

  • virtual void DoDataExchange(CDataExchange* pDX);是用来支持DDX(对话框数据交换,将一个变量和一个控件进行绑定的时候用DDX)和DDV(对话框数据效验,检验该控件是否为你所需要的时候用DDV)机制的成员函数。
  • virtual BOOL OnInitDialog();是在对话被创建(Create)后立即被执行的函数,因此在这里可以添加对话框的初始化所需要的自定义代码。
  • afx_msg void OnSysCommand(UINT nID, LPARAM lParam);是对话框的处理WM_SYSCOMMAND消息的函数。WM_SYSCOMMAND消息是关于系统控制的消息,如鼠标在标题栏上的操作等。
  • afx_msg void OnPaint();是对话框处理WM_PAINT的函数,当对话框窗体发生重绘时有WM_PAINT消息到达程序。
  • afx_msg HCURSOR OnQueryDragIcon();当用户拖动最小化窗口时系统调用此函数取得光标显示。
  • afx_msg void OnBnClickedHelloworld();是处理按钮单击消息的处理函数。

4.Edit控件:

  • GetDlgItem()函数是获取的其文本内容,获取数值:int nValue = _ttoi(strInput);的方法来转换。
  • 右键点击添加的控件,选择“添加变量”菜单项,设置其访问属性(建议用protected);在类别中选择Value(默认是Control);设置int和变量名m_nValue,点击完成按钮。完成“添加变量”向导后,在DoDataExchange()中,系统自动添加了一条语句:DDX_Text(pDX, IDC_INPUT, m_nValue);意思是将ID为IDC_INPUT的控件与m_nValue成员变量进行绑定。当程序执行UpdateData()的时候,数据便开始进行交换,数据交换方向由UpdateData的参数确定。
  • UpdateData(TRUE);就是让文本框的值更新到m_nValue里,如果是UpdateData(FALSE);就是将变量中的数据返回给文本框里。

5.Check控件和Radio控件:

BOOL bState;
bState = ((CButton*)GetDlgItem(IDC_CHECK1))->GetCheck();//获取复选框状态,一定要再获得CWnd指针后,强制转换为CButton指针
((CButton*)GetDlgItem(IDC_RADIO1))->SetCheck(); //设置单选框状态为选中

【MFC相关】MFC入门相关的更多相关文章

  1. MFC下OpenGL入门(可以用)

    MFC下OpenGL入门 源文件 1, 建一工程文件,我这里命名为first,现在first工程里面我们没有添加任何东西,所有的东西都是MFC自动帮我们创建的. 2, 添加链接库.这一步很关键.打开菜 ...

  2. 背水一战 Windows 10 (68) - 控件(控件基类): UIElement - Pointer 相关事件, Tap 相关事件, Key 相关事件, Focus 相关事件

    [源码下载] 背水一战 Windows 10 (68) - 控件(控件基类): UIElement - Pointer 相关事件, Tap 相关事件, Key 相关事件, Focus 相关事件 作者: ...

  3. 【Android端 adb相关】adb相关总结

    一.什么是adb? adb的全称是:Android Debug Bridge,adb命令的构成是三部分,分别是:服务器.客户端.后台程序: (1)客户端:一个在PC上运行的客户端.可以通过shell端 ...

  4. 【MFC】mfc控件位置调整和坐标确定 .

    摘自DoubleLi:   http://www.cnblogs.com/lidabo/archive/2012/08/24/2654678.html mfc控件位置调整和坐标确定 http://my ...

  5. MFC中使用FLASH相关

    出自http://my.oschina.net/ypimgt/blog/62573 一.准备工作 第一步:下载并安装Adobe Flash Player. 从官方网站(http://get.adobe ...

  6. 吕鑫VC6.0-VS2015 全套C/C++、MFC新手实战入门教程、Linux视频教程 最好的基础入门教程没有之一

    本课程包括:[1]C语言(1个月)[2]C++语法与数据结构(1个月)) [3]MFC项目开发(1个月)[4]Linux项目开发(1个月)往届的授课视频都已经上传到百度网盘,请同学们按照视频教程提前掌 ...

  7. Docker 入门相关

    什么是Docker和容器 可能是把Docker的概念讲的最清楚的一篇文章 为什么要用Docker 相关网址 Window平台Docker下载 一些基本知识 Volume docker volume l ...

  8. DBA入门相关知识介绍

    DBA(database administrator):数据库管理员                           DBMS(database management system):数据库管理系 ...

  9. Lattice系列FPGA入门相关0(Lattice与Altera、Xilinx对比及入门)

    需求说明:Lattice系统FPGA入门 内容       :Lattice与Altera.Xilinx对比 来自       :时间的诗 1.Lattice与Altera.Xilinx对比 latt ...

随机推荐

  1. 转:CSS布局奇淫技巧之-宽度自适应

    css这个东西,说难不难,说容易也不容易.我觉得最重要的还是经验的积累,正所谓的不积硅步,无以至千里.这一系列文章讲述几种css特殊布局的实现,也当作为自己做个备忘吧. 首先讲的是三列布局,左右两列宽 ...

  2. 菜鸟级SQL Server21天自学通(文档+视频)

    SQL语言的主要功能就是同各种数据库建立联系,进行沟通.按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言.SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据 ...

  3. S3C6410嵌入式应用平台构建(六)——linux-3.14.4移植到OK6410-(Yaffs2文件制作)

    本文主要讲怎用利用yaffs2工具和busybox制作yaffs2文件系统镜像.大多数都是参照网上的,目的在于记录学习,不做任何用途. 一.制作mkyaffs2image工具 进入yaffs2源码目录 ...

  4. js 全局函数

    全局函数与内置对象的属性或方法不是一个概念. 全局函数它不属于任何一个内置对象. JS中有14个全局函数 函数 描述 decodeURI() 解码某个编码的 URI. decodeURICompone ...

  5. html中radio,checkbox值的获取、赋值、注册事件

    1,radio分组 只要name一样,就是一组的,即一组中只能选择一个,如下: 代码如下: <span>group1:</span> <input type=" ...

  6. 字符串分割--Java中String.split()用法

    转载自:http://blog.163.com/zs_note/blog/static/199386112201110804233558/ 在java.lang包中有String.split()方法, ...

  7. if和switch

    在 JavaScript 中,我们可使用以下条件语句:if 语句 -                        只有当指定条件为 true 时,使用该语句来执行代码if...else 语句 -   ...

  8. linux grep 指定字符串的正则表达式

    cat all_uuid_log | grep "[a-z0-9]\{32\}"

  9. C学习之结构体

    结构体(struct) 结构体是由基本数据类型构成的.并用一个标识符来命名的各种变量的组合,结构体中可以使用不同的数据类型. 1. 结构体说明和结构体变量定义 在Turbo C中, 结构体也是一种数据 ...

  10. 美化 input type=file控件

    大家都知道input的type=file控件默认样式是不能修改的 可以通过一个小技巧处理下 html: <a href="javascript:;" class=" ...