对话框常用相关消息映射函数:

一、对话框初始化消息:

1、WM_CREATE:通用窗口初始化消息

窗口还未显示出来,只有父窗口,子窗口还没创建

2、WM_INITDIALOG:对话框窗口专用消息

子窗口已经全部创建完成,可以调用和操作子窗口

二、对话框关闭过程消息:

1、WM_SYSCOMMAND:管理所有系统菜单和系统按钮消息

包括通过最大化、最小化、移动、大小和关闭等

2、WM_CLOSE:是WM_SYSCOMMAND消息的一个专用关闭的分支

在此消息处理过程可以取消本次关闭任务

3、IDCANCEL按钮消息:不但用于按钮回调消息,也是系统按钮关闭窗口的回调执行真正关闭对话框函数EndDialog,在此消息处理过程可以取消本次关闭任务

4、WM_DESTROY:通用窗口销毁消息

窗口已经在屏幕中消失了,但是自身窗口和窗口内的控件都还可以调用

在此消息处理过程可以取消本次关闭任务

二、非模式对话框

1、在调用EndDialog函数关闭时,非模式对话框只是隐藏没有真正关闭;

2、在调用DestroyWindow函数关闭时,只是隐藏没有真正关闭;

3、DestroyWindow函数是通用摧毁窗口的函数,适用于对话框、控件、框架和视图等

三、CWnd成员函数

1、DestroyWindow

2、Create和CreateEx

3、获取窗口句柄

a)pWnd->m_hWnd;  直接调用前最好判断一下指针是否为空

b)operator HWND();   自动类型转换,将对象转换为句柄

c)GetSafeHwnd();  可以避免的一种方法,因为指针为空造成的软件崩溃

四、窗口操作

a)ShowWindow;  改变窗口显示状态,包括最大化、最小化和隐藏等等

b)EnableWindow; 激活或者禁用窗口

c)MoveWindow;  移动窗口(父窗口基于坐标系为屏幕坐标系,如果是子窗口坐标系是父窗口客户区)

d)CenterWindow;  居中窗口

e)SetWindowPos;  可以同时对窗口的x,y,z轴方向进行修改,常用于前端显示功能的开发

windows程序设计(四)的更多相关文章

  1. Windows 程序设计

    一.Win32 API /******************************************************************** created: 2014/04/1 ...

  2. windows 程序设计 SetPolyFillMode关于ALTERNATE、WINDING的详细解释

    看windows程序第五章GDI编程部分.一直卡壳在这里了. 下面我来说下自己的想法.看是否对您有帮助. 首先我们来看一个图. SetPolyFillMode(ALTERNATE);  // 系统默认 ...

  3. windows程序设计.第一个windos程序

    Windows程序设计(第5版) windows程序需要调用API. 第一个Windows程序 /*HelloMsg.c -- Displays "Hello World!" in ...

  4. Windows程序设计学习笔记(1):一个简单的windows程序

    <Windows程序设计>(第五版)(美Charles Petzold著) #include<windows.h> LRESULT CALLBACK WndProc(HWND, ...

  5. Windows 程序设计(4) MFC 03 -系列学习

    本文整体目录和绝大部门内容来自 [鸡啄米网站]的MFC系列文章,欢迎支持原创 (一)VS2010/MFC编程入门之前言 VC++全称是Visual C++,是由微软提供的C++开发工具,它与C++的根 ...

  6. 关于《Windows程序设计(第五版)》中一个实例程序的疑问

    最近一直在看Charlse Petzold的<Windows程序设计>,作为一个新得不能再新的新手,只能先照着书的抄抄源码了,之前的例子一直都很正常,但昨天遇到一个很诡异的BUG. 先看实 ...

  7. windows 程序设计自学:添加图标资源

    #include <windows.h> #include "resource.h" LRESULT CALLBACK MyWndProc( HWND hwnd, // ...

  8. windows程序设计笔记

    2014.05.06 新建一个visual C++ -- 常规 -- 空白 的项目,用.c后缀名指定这是一个用C语言来写的windows项目.和C语言的hellworld程序做了一个比较,按照wind ...

  9. 《Windows程序设计第5版》学习进度备忘

    书签:另外跳过的内容有待跟进 __________________学习资源: <Windows程序设计第5版珍藏版> __________________知识基础支持: _________ ...

  10. MFC Windows程序设计源代码免费下载

    本人近期在网上找到了<MFC Windows程序设计>第二版的书内程序的源代码,特意上传CSDN上面,供学习MFC的程序猿们免费下载. 源代码下载: http://download.csd ...

随机推荐

  1. Business Intelligence(BI) 商务智能

    商业智能技术正是一种能够帮助企业迅速地完成信息采集.分析的先进技术.它以数据仓库(Data Warehousing).在线分析处理(OLAP).数据挖掘(Data Mining)3种技术的整合为基础, ...

  2. iOS之网络编程

    发送HTTP请求的方法 在HTTP/1.1协议中,定义了8种发送http请求的方法 GET.POST.OPTIONS.HEAD.PUT.DELETE.TRACE.CONNECT.PATCH 根据HTT ...

  3. Openjudge-计算概论(A)-人民币支付

    描述: 从键盘输入一指定金额(以元为单位,如345),然后输出支付该金额的各种面额的人民币数量,显示100元,50元,20元,10元,5元,1元各多少张,要求尽量使用大面额的钞票. 输入一个小于100 ...

  4. 倒叙筛除list

    for(int i=list.Count-1;i>=0;i--) {    if(list[i])   {     list.RemoveAt(i);   } }

  5. 如何直观的解释back propagation算法?

    转自:知乎-https://www.zhihu.com/question/27239198 作者:匿名用户链接:https://www.zhihu.com/question/27239198/answ ...

  6. MFC下对文件及文件夹的操作(复制、剪切、删除、创建文件夹,写文件)

    一.文件夹的创建 void CFileOperationDlg::OnButtonMakeFolder() { // TODO: Add your control notification handl ...

  7. iOS https plist

    <key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key ...

  8. Alyona and mex

    Alyona and mex time limit per test 2 seconds memory limit per test 256 megabytes input standard inpu ...

  9. do-while循环判断成绩的有效输入

    #include "stdio.h" void main() { int score; do { printf("请输入你的成绩(0-100):"); scan ...

  10. msdn我告诉你

    http://msdn.itellyou.cn/ 微软旗下所有的msdn订阅软件资源 均为ed2k资源 Business Solutions MSDN Library 工具和资源 应用程序 开发人员工 ...