窗口!窗口!

让编程改变世界

Change the world by program


内容节选:

在前边两节课的例子中,我们通过 MessageBox 函数创建一个消息框程序,消息框其实就是用来跟用户对话的工具,例如说你弹出一个消息框“我可以格式化你的C盘吗?”用户可以选择“是”或者“否”来告诉你他的决定。

当然你如果只提供一个“确定”按钮,那用户可能就会骂娘了。

好,大家有没有想过,这个消息框实际上是什么?没错,实际上它就是一个特殊的窗口。带有一个标题栏,一个可选图标,一行或多行文字,以及有几个按钮的一个简单的特殊窗口。

我们提到了窗口,Windows就是窗口的意思,我们刚才说了消息框是一个窗口,更加明显的,我们打开的VS2013也是一个窗口,浏览器也是一个窗口,甚至我们的桌面也是一个窗口程序,还有一些看起来不明显的,例如各种按钮、单选按钮、复选按钮、列表框、滚动条这些其实也都是窗口。所以我们可以说,Windows编程,处处都是窗口编程。

我们先来看一个比较虐心的程序,今后我们很长一段时间都会跟这段代码打交道,所以你要摸透它、理解它,甚至要强迫自己去爱上它…….

这段代码你至少应该自己动手敲上五遍以上,然后再考虑跟小甲鱼一样使用模板创建或者直接拷贝。偷懒的前提是你知道你真的懂了,而不是你假设你已经懂了。

..... 此处省略N多内容,具体请看视频讲解 ......

[buy] 获得所有教学视频、课件、源代码等资源打包 [/buy]
[Downlink href='http://kuai.xunlei.com/d/BdsUAwJzQgBQTnRT783']视频下载[/Downlink]
[Downlink href='http://urlxf.qq.com/?7vaIfey']备胎下载[/Downlink]

窗口!窗口!- Windows程序设计(SDK)003的更多相关文章

  1. 窗口过程 - Windows程序设计(SDK)006

    窗口过程 让编程改变世界 Change the world by program 内容节选: Windows 把这样一个窗口分为了客户区和非客户区,这里边白色的这一大片就是客户区,而这些标题栏.菜单栏 ...

  2. windows程序设计.窗口.

    第一个windows窗口 #include <windows.h> /* Displays "Hello, World!" in client area */ LRES ...

  3. Windows程序设计(第五版)学习:第三章 窗口与消息

        第三章 窗口与消息 1,windows窗口过程:应用程序所创建的每一个窗口都有一个与之关联的窗口过程,用于处理传递给窗口的消息. 2,窗口依据窗口类来创建.窗口类标识了用于处理传递给窗口的消息 ...

  4. Windows程序设计笔记(二) 关于编写简单窗口程序中的几点疑惑

    在编写窗口程序时主要是5个步骤,创建窗口类.注册窗口类.创建窗口.显示窗口.消息环的编写.对于这5个步骤为何要这样写,当初我不是太理解,学习到现在有些问题我基本上已经找到了答案,同时对于Windows ...

  5. 愉快的开始 - Windows程序设计(SDK)000

    愉快的开始 让编程改变世界 Change the world by program  参考教材 购买链接:Windows程序设计(第5版)(珍藏版)(附CD-ROM光盘1张)  学习环境 视频演示:W ...

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

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

  7. Windows 程序设计

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

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

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

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

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

随机推荐

  1. node.js相关

    node node最大的特点是单线程,因此一个只能有一个任务运行,大量采用异步操作. 某一个任务的后续操作一般采用回调函数的形式 var callback = function (error, val ...

  2. Baidu Map Web API 案例

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  3. Smarty include使用

    {include} {include}用于载入其他模板到当前模板中. 在包含模板中可用的变量,载入后在当前模板仍然可用. {include}必须设置file 属性,设置载入的文件资源路径. 设置了可选 ...

  4. 设计模式(十五):Iterator迭代器模式 -- 行为型模式

    1.概述 类中的面向对象编程封装应用逻辑.类,就是实例化的对象,每个单独的对象都有一个特定的身份和状态.单独的对象是一种组织代码的有用方法,但通常你会处理一组对象或者集合. 集合不一定是均一的.图形用 ...

  5. 【转】adobe acrobat pro修改pdf文字

    原文网址:http://zhidao.baidu.com/link?url=7MTeEu5IM49lNIISNQMcZLyLAwMPsRQWF5WAwQPfvkPsbbZLHSQE43MWaIxxVm ...

  6. HDOJ 1266 Reverse Number(数字反向输出题)

    Problem Description Welcome to 2006'4 computer college programming contest! Specially, I give my bes ...

  7. HDU_1239——再次调用外星智慧

    Problem Description A message from humans to extraterrestrial intelligence was sent through the Arec ...

  8. HDU_2044——蜜蜂走蜂房,递推

    Problem Description 有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行.请编程计算蜜蜂从蜂房a爬到蜂房b的可能路线数. 其中,蜂房的结构如下所示.   Input 输入数据的 ...

  9. Tradesy | IT桔子

    Tradesy | IT桔子 Tradesy www.tradesy.com   认领 关注 分享

  10. Mysql auto_increment 重新计数(让id从1开始)

    当清空一个表的时候,重新插入数据,发现auto_increment属性的字段计数不是从1开始的时候,可以使用以下命令   方法一 delete from test; alter table `test ...