windows程序设计(四)
对话框常用相关消息映射函数:
一、对话框初始化消息:
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程序设计(四)的更多相关文章
- Windows 程序设计
一.Win32 API /******************************************************************** created: 2014/04/1 ...
- windows 程序设计 SetPolyFillMode关于ALTERNATE、WINDING的详细解释
看windows程序第五章GDI编程部分.一直卡壳在这里了. 下面我来说下自己的想法.看是否对您有帮助. 首先我们来看一个图. SetPolyFillMode(ALTERNATE); // 系统默认 ...
- windows程序设计.第一个windos程序
Windows程序设计(第5版) windows程序需要调用API. 第一个Windows程序 /*HelloMsg.c -- Displays "Hello World!" in ...
- Windows程序设计学习笔记(1):一个简单的windows程序
<Windows程序设计>(第五版)(美Charles Petzold著) #include<windows.h> LRESULT CALLBACK WndProc(HWND, ...
- Windows 程序设计(4) MFC 03 -系列学习
本文整体目录和绝大部门内容来自 [鸡啄米网站]的MFC系列文章,欢迎支持原创 (一)VS2010/MFC编程入门之前言 VC++全称是Visual C++,是由微软提供的C++开发工具,它与C++的根 ...
- 关于《Windows程序设计(第五版)》中一个实例程序的疑问
最近一直在看Charlse Petzold的<Windows程序设计>,作为一个新得不能再新的新手,只能先照着书的抄抄源码了,之前的例子一直都很正常,但昨天遇到一个很诡异的BUG. 先看实 ...
- windows 程序设计自学:添加图标资源
#include <windows.h> #include "resource.h" LRESULT CALLBACK MyWndProc( HWND hwnd, // ...
- windows程序设计笔记
2014.05.06 新建一个visual C++ -- 常规 -- 空白 的项目,用.c后缀名指定这是一个用C语言来写的windows项目.和C语言的hellworld程序做了一个比较,按照wind ...
- 《Windows程序设计第5版》学习进度备忘
书签:另外跳过的内容有待跟进 __________________学习资源: <Windows程序设计第5版珍藏版> __________________知识基础支持: _________ ...
- MFC Windows程序设计源代码免费下载
本人近期在网上找到了<MFC Windows程序设计>第二版的书内程序的源代码,特意上传CSDN上面,供学习MFC的程序猿们免费下载. 源代码下载: http://download.csd ...
随机推荐
- 浅析IO模型
也许很多朋友在学习NIO的时候都会感觉有点吃力,对里面的很多概念都感觉不是那么明朗.在进入Java NIO编程之前,我们今天先来讨论一些比较基础的知识:I/O模型.下面本文先从同步和异步的概念 说起, ...
- SecureCRT - 使用方法和技巧
1. 保活防掉线选项 -> 会话选项 -> 终端勾选 自动重新连接, 发送协议 NO-OP 每60秒 2. 拷贝与粘贴的设置选项 -> Global options -> Te ...
- 2016NEFU集训第n+3场 E - New Reform
Description Berland has n cities connected by m bidirectional roads. No road connects a city to itse ...
- app 一些常用的
发短信 :sms:10086 打电话:tel:10086 1.-webkit-tap-highlight-color:rgba(255,255,255,0)可以同时屏蔽ios和android下点击元素 ...
- quicksort快排
废话不多说,上代码: void quicksort(int x[], int lo, int hi){ int i = lo, j = hi; ]; while(i <= j){ while(x ...
- php pdo and pdostatement
Relationship between PDO class and PDOStatement class up vote2down votefavorite I'm a php and my ...
- stm32按键识别
刚写了一个关于stm32单片机的按键识别的程序.目的,同时识别多个按键,并且不浪费cpu的时间. 关于去抖动,以前以为是在按键的时候,手会抖动.通过程序验证,这个确实是误解.这个应该是防止意外干扰.以 ...
- C#中几种数据库的大数据批量插入
C#语言中对SqlServer.Oracle.SQLite和MySql中的数据批量插入是支持的,不过Oracle需要使用Orace.DataAccess驱动. IProvider里有一个用于实现批量插 ...
- winsock编程WSAAsyncSelect模型
winsock编程WSAAsyncSelect模型 WSAAsyncSelect模型也称异步选择模型,其核心函数是WSAAsyncSelect.它可以用来在一个socket上接收以windows消息为 ...
- 使用NSURLProtocol实现UIWebView的离线缓存
http://blog.csdn.net/youcanping2008/article/details/9240487