1.DoModal创建模态对话框

2.Create创建非模态对话框(需要用ShowWindow显示出来)

模态:对话框显示,程序会暂停,直到对话框关闭

非模态:对话框显示,程序继续执行

3.对于模态对话框,点击确定/取消对话框被销毁,而对于模态对话框,只是被隐藏

4.对于模态对话框,需要在自己的类中覆盖OnOK这个虚函数,在OnOK中调用DestroyWindow

5.GetWindowText获取窗口文本

6.GetDlgItem获取对话框控件指针

7.SetWindowText设置窗口文本

8.静态文本框(标签)不能接收通知消息,除非把notify复选上

9.GetDlgItemText获取控件文本

10.SetDlgItemText设置控件文本

11.GetDlgItemInt获取控件数字

12.SetDlgItemInt设置控件数字

13.UpdateData参数为TRUE,获取数据,参数为FALSE,设置数据

在类向导里添加关联成员变量

14.WM_GETTEXT消息获取控件文本

An application sends a WM_GETTEXT message to copy the text that corresponds to a window into a buffer provided by the caller.

To send this message, call the SendMessage function with the following parameters.

SendMessage(

(HWND) hWnd,              // handle to destination window

WM_GETTEXT,               // message to send

(WPARAM) wParam,          // number of characters to copy

(LPARAM) lParam           // text buffer

);

15.WM_SETTEXT设置控件文本

wParam必须为0

16.SendDlgItemMessage向控件发送消息

17.EM_SETSEL

EM_SETSEL

The EM_SETSEL message selects a range of characters in an edit control. You can send this message to either an edit control or a rich edit control.

To send this message, call the SendMessage function with the following parameters.

SendMessage(

(HWND) hWnd,              // handle to destination window

EM_SETSEL,                // message to send

(WPARAM) wParam,          // starting position

(LPARAM) lParam          // ending position

);

18.EM_GETSEL

EM_GETSEL

The EM_GETSEL message retrieves the starting and ending character positions of the current selection in an edit control. You can send this message to either an edit control or a rich edit control.

To send this message, call the SendMessage function with the following parameters.

SendMessage(

(HWND) hWnd,              // handle to destination window

EM_GETSEL,                // message to send

(WPARAM) wParam,          // starting position (LPDWORD)

(LPARAM) lParam          // ending position (LPDWORD)

);

19.SetFocus设置焦点

20.GetFocus  获取焦点所在窗口

21.

22.IsRectEmpty判断矩形区域面积是否为0

23IsRectNull判断矩形区域四个参数是否都为0

24.

25.

26.

27.SetWindowPos可以改变窗口大小、z-order等状态

28.SetWindowLong设置窗口属性

29.WM_INITDIALOG在对话框创建前产生

30.GetNextWindow获取下一个窗口句柄

31.GetWindow获取窗口句柄

32.GetNextDlgTabItem获取下一个tab窗口

33.IDOK是OK按钮的缺省消息ID,不是IDC_OK

 用菊子曰博客,就是爽!

孙鑫MFC学习笔记7:对话框编程(上)的更多相关文章

  1. 孙鑫MFC学习笔记14:网络编程

    1.OSI 2.TCP/IP与OSI对应关系 3.Socket 4.客户机/服务器模式 5.Windows Sockets 6.套接字类型 7.面向连接的socket编程 8.面向无连接的socket ...

  2. 孙鑫MFC学习笔记6:菜单编程

    1.对菜单响应的顺序: 视类,文档类,框架类,应用程序类 2.消息的分类 3.CWnd继承自CCmdTarget类, 所以从CWnd派生出的类也可以接收WM_COMMAND消息 4.命令的消息路由 5 ...

  3. 孙鑫VC学习笔记:多线程编程

    孙鑫VC学习笔记:多线程编程 SkySeraph Dec 11st 2010  HQU Email:zgzhaobo@gmail.com    QQ:452728574 Latest Modified ...

  4. 孙鑫MFC学习笔记8:对话框编程(下)

    1.在按钮上没有字体设置,但是在对话框上有字体设置 2.让按钮进行消息响应 *1.创建按钮 *2.创建从按钮继承的类 *3.关联对象 3.属性页编程 *1.在对话框资源中新建属性页 *2.为属性页创建 ...

  5. 孙鑫MFC学习笔记20:Hook编程

    1.HOOK拦截消息,设置越后的钩子优先级越高(钩子队列)2.SetWindowHookEx设置钩子    如果thread identifier为0或其他进程创建的线程,回调函数需要在动态链接库中声 ...

  6. 孙鑫MFC学习笔记9:状态栏与工具栏编程

    1.在窗口创建之前就应该修改窗口的样式 2.单文档应用程序会把文档名作为应用程序标题,应该去掉FWS_ADDTOTITLE属性,然后修改lpszName为标题 3.在窗口创建完成后,可以通过SetWi ...

  7. 孙鑫MFC学习笔记12:文件读写

    1.指向常量的指针 2.指针常量 3.C语言对文件操作是在缓冲区,在缓冲区满或文件关闭时写入文件 读取相同 4.fflush刷新缓冲区,使缓冲区数据写入文件 5.fseek改变文件指针偏移量 6.st ...

  8. 孙鑫MFC学习笔记13:文档

    1.CArchive类保存内存数据 2.CAchive类重载了>>与<<操作符,类似C++文件流 3.在OnNewDocument中通过SetTitle设置标题 4.字符串资源 ...

  9. 孙鑫MFC学习笔记10:画图/贴图

    1.SetPixel在指定点设置像素 2.虚线.点线宽度必须为1 3.CColorDialog创建颜色对话框 4.需要设置CC_RGBINIT标志才能设置颜色对话框的默认颜色 5.CC_FULLOPE ...

随机推荐

  1. CentOS 6.6下Redis安装配置记录

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/120.html?1455855209 在先前的文章中介绍过redis,以下 ...

  2. MyBatis学习总结(六)——调用存储过程

    一.提出需求 查询得到男性或女性的数量, 如果传入的是0就女性否则是男性 二.准备数据库表和存储过程 1 create table p_user( 2 id int primary key auto_ ...

  3. Atitit  发帖机实现(1)-----UsrQBm2008 页面上下文规范

    Atitit  发帖机实现(1)-----UsrQBm2008 页面上下文规范 1.1. 网站绝对路径,页面绝对路径1 1.2. Java的javax.servlet.ServletContext1 ...

  4. C#并行编程-Task

    菜鸟学习并行编程,参考<C#并行编程高级教程.PDF>,如有错误,欢迎指正. 目录 C#并行编程-相关概念 C#并行编程-Parallel C#并行编程-Task C#并行编程-并发集合 ...

  5. GridView和DATAGRID前后台查询用法的比较

    Grideview前台: <DIV class="mainDiv" id="GridWidth"> <ASP:GridView id=&quo ...

  6. jquery 之 Deferred 使用与实现

    观察者模式是开发中经常使用的模式,这个模式由两个主要部分组成:主题和观察者.通过观察者模式,实现主题和观察者的解耦. 主题负责发布内容,而观察者则接收主题发布的内容.通常情况下,观察者都是多个,所以, ...

  7. 在SQL Server中添加供应用程序使用的帐号

        在之前客户咨询案例中,很多客户应用程序连接SQL Server直接用的就是SA帐号.如果对数据库管理稍微严格一点的话,就不应该给应用程序这种权限,通常应用程序只需要进行增删改查,而很少有DDL ...

  8. WP中的语音识别(下):语音指令

    除了系统集成的可以用于搜索.启动应用程序等语音命令外,在我们的应用程序内部还能自己定义语音指令,使得我们的APP能与语音操控结合得更加完全. 语音指令是通过一个XML文件来定义的.比如,咱小舅子开了家 ...

  9. Struts2第一个例子Hello World!

    1.首先用eclipse新建一个动态web项目Struts2Demo1: (把Default output floder由build\classes改成WebContent\WEB-INF\class ...

  10. HTML5移动Web开发(十)——在浏览器中启动手机原生应用

    用户可以在浏览器中启动移动设备的原生应用程序,比如地图.电话.短信等,具体能够启动哪些应用程序,这取决于该移动设备上哪些原生应用是否允许从浏览器启动. 新建ch02r05.html <!doct ...