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. UWP入门教程1——UWP的前世今生

    目录 引言 设备族群 UI 和通用输入模式 通用控件和布局面板 工具 自适应扩展 通用输入处理 引言 在本篇文章中,可以掌握以下知识: 设备族群,如何决定目标设备 新的UI控件和新面板帮助你适应不同的 ...

  2. 爱上MVC~在Views的多级文件夹~续~分部页的支持

    回到目录 之前写的一篇文章,主要针对View视图,它可以放在N级目录下,不必须非要在views/controller/action这种关系了,而在程序运行过程中,发现分页视图对本功能并不支持,原因很简 ...

  3. EF架构~关系表插入应该写在事务里,但不应该是分布式事务

    回到目录 这个标题很有意思,关系表插入,就是说主表和外表键在插入时,可能会有同步插的情况,如在建立主表时,扩展表需要同步完成数据的初始化工作,而对于多表插入时,我们为了保证数据的一致性会针它写在事务中 ...

  4. Liferay7 BPM门户开发之41: Expando API入门

    Expando 是liferay的一种自定义表格扩展的方式,从5.0就已存在 , 可以在运行时新建表格\字段\行\值. 这是一种Service Builder之外的轻量级替代扩展方式,不必像Servi ...

  5. JS中call、apply、bind使用指南,带部分原理。

    为什么需要这些?主要是因为this,来看看this干的好事. box.onclick = function(){ function fn(){ alert(this); } fn();}; 我们原本以 ...

  6. SilverLight 控件ListBox中的SelectionChanged事件

    出现的问题: ListBox 中给了它一个这样的事件SelectionChanged="NumBasket_SelectionChanged" 也就是单击某行就会触发的事件,要实现 ...

  7. java.util.Scanner简单应用

    import java.util.Scanner; import java.io.*; public class FileScannerTest{ public static void main(St ...

  8. PHP的学习--PHP的闭包

    php的闭包(Closure)也就是匿名函数,是PHP5.3引入的. 闭包的语法很简单,需要注意的关键字就只有use,use是连接闭包和外界变量. $a = function() use($b) {} ...

  9. Android悬浮窗口的实现

    效果图:(悬浮框可拖动) 在项目开发中有一个需求:弹出悬浮窗后,响应悬浮窗的事件再弹出对话框,但是对话框怎么也不显示.也就是说在弹出悬浮框的同时,不能再弹出对话框,可能的原因: 1.悬浮框的焦点在最前 ...

  10. 聊Javascript中的AOP编程

    Duck punch 我们先不谈AOP编程,先从duck punch编程谈起. 如果你去wikipedia中查找duck punch,你查阅到的应该是monkey patch这个词条.根据解释,Mon ...