自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 资源 (8)
  • 收藏
  • 关注

转载 8.4 在状态报告上使用计时器

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P281        本章的最后一个程序我在第 5 章也提及过。我觉得该程序是 GetPixel 函数唯一有用的地方。        WHATCLR 显示了鼠标指针当前所指的热点的 RGB 颜色。[cpp] view plain copy/*-

2016-08-17 08:14:02 230

转载 8.3 使用计时器作为时钟

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P271        时钟是计时器最明显的应用,我们来看两个例子:一个是数字时钟,另一个是模拟时钟。8.3.1  数字时钟        DIGCLOCK 程序模拟了 LED 的七段显示形式,显示当前的时间。[cpp] view plain copy

2016-08-17 08:13:14 966

转载 8.2 使用计时器的三种方法

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P265        如果程序在整个运行过程中需要一个计时器,在 WinMain 函数中或处理 WM_CREATE 消息时,调用 SetTimer 函数:在离开 WinMain 函数时或是处理 WM_DESTROY 消息时,调用 KillTimer 函数。基于调用 SetTimer 参数的不同,可才采取以下

2016-08-17 08:12:27 1601

转载 8.1 计时器的基本知识

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P263        你可调用 SetTimer 函数为自己的 Windows 程序分配一个计时器。SetTimer 包含一个无符号整型参数,该参数指定了时间间隔的长短,为一毫秒(millisecond)到 4294967295 毫秒(将近 50 天)。这个参数也表示 Windows 给程序发送 WM_TI

2016-08-17 08:11:45 532

转载 第 8 章 计时器

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P263        Windows 计时器是一种输入设备,每到一个指定的时间间隔,它都会周期性地通知应用程序。程序告诉 Windows 这个时间间隔的长度,例如“每 10 秒种提醒我一次”。Windows 就会反复地向程序发送 WM_TIMER 消息,以表示该时间间隔已经过去。        Wi

2016-08-17 08:11:10 398

转载 7.6 鼠标的滚轮

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P255        “设计一个更好的捕鼠器,人们自然会不辞辛苦来到你的家门前。”我的母亲曾经这样教导我,不知不觉中阐释了 Emerson 的思想。当然,而今设计一个更好的“鼠标”也许更有价值。        微软的 IntelliMouse 系列鼠标增加了传统鼠标的功能,在两个按钮中间 添加了一个

2016-08-17 08:10:20 333

转载 7.5 捕获鼠标

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P249        通常,只有当鼠标指针位于窗口的客户区或非客户区时,窗口过程才接收鼠标消息。而当鼠标处于窗口范围之外时,一个程序也可能需要接收鼠标消息。如果是这种情况,那么该程序可以“捕获”鼠标。别担心,这只“老鼠”不会咬人。7.5.1  设计一个矩形        为了理解为什么要捕获

2016-08-17 08:09:09 228

转载 7.4 程序中的击中测试

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P230        前面曾讨论了 Windows 资源管理器是如何响应鼠标单击和双击消息的。显然,程序(更确切地说,是 Windows 资源管理器所采用的列表视图控件)必须首先准确地判断用户鼠标所指的文件或目录位置。        这就是“击中测试”。正如 DefWindowProc 在处理 WM

2016-08-17 08:08:24 345

转载 7.3 非客户区鼠标消息

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P230        到目前为止,所有讨论的 10 种鼠标消息都是发生在窗口客户区内的移动或单击。如果鼠标位于窗口内部除客户区外的其他区域,Windows 就会向窗口过程发送一个“非客户区”鼠标消息。窗口的非客户区包括标题栏、菜单和窗口滚动条。        系统一般不需要用户处理非客户区鼠标消

2016-08-17 08:07:37 1313

转载 3.1.5 窗口的创建

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P50        由于窗口类知识定义了窗口的一般特征,因此基于同一窗口类可以创建许多不同的窗口。在调用 CreateWindow 函数来创建窗口时,可以指定许多与窗口有关的细节信息。        Windows 编程的新手有时容易对窗口类和窗口之间的区别以及为什么窗口的特征不能一次性指定完毕而感

2016-08-17 08:06:58 196

转载 Windows 函数调用

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P42        HELLOWIN 调用了至少 18 个 WIndows 函数。下面按照出现顺序一一列出这些被调用的函数(并附有简短描述):LoadIcon    加载图标,以供程序使用。LoadCursor    加载鼠标光标,以供程序使用。GetStockObject    获取一个图形对象。

2016-08-17 08:06:23 380

转载 2.1.4 双字节字符集

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P23        迄今为止,我们一直在看 256 个字符的字符集。但是,像中文、日文和韩文的象形文字约有 21 000 个字符。怎样来融合这些语言而同时保持与 ASCII 有着某种程序的兼容性呢?        答案(如果这样说是对的话)在于双字节字符集(DBCS)。DBCS 一开始就是 256

2016-08-17 08:05:41 2337

转载 7.2 客户区鼠标消息

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P223        第 6 章已经讲到,Windows 只把键盘消息发送到当前具有输入焦点的窗口。鼠标消息则不同:当鼠标经过窗口或在窗口内被单击,则即使该窗口是非活动窗口或不带输入焦点,窗口过程还是会收到鼠标消息。Windows 定义了 21 种鼠标消息。不过,其中 11 种消息与客户区无关,称为“非

2016-08-17 08:04:48 623

转载 7.1 鼠标的基础知识

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P221        Windows 98 支持单键、双键和三键鼠标,并支持利用控制杆或光笔来模拟鼠标。在早期,为了尊重使用单键鼠标的用户,Windows 应用程序都避免使用第二个按钮或第三个按钮。但是,双键鼠标已经成为事实上的标准,因此那种慎用第二个按钮的传统就变得不再合理。的确,第二个按钮现在已经是弹出

2016-08-17 08:04:04 354

转载 6.5 插入符号(不是光标)

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P213        当你向程序中输入文本时,通常会有下划线、竖线或方框指示你输入的下一个字符将出现屏幕上的位置。你也许认为这是“光标”,但在编写 Windows 程序时,你必须避免这种习惯。在 Windows 中,它被称为“插入符号”(caret)。“光标”(cursor)特指表示鼠标位置的位图图像,即鼠

2016-08-17 08:03:29 610

转载 6.4 键盘消息和字符集

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P192        本章后面的范例程序都是有缺陷的。它们不总是能在所有的 Windows 版本下正确运行。它们的缺陷不是被故意嵌入代码的;的确,也许你永远不会注意到它们。只有在某些不同的键盘语言和布局间转换,以及在多字节字符集的 Windows 远东版上运行时,才会发现它们的缺陷。所以我们不愿称它们为“b

2016-08-17 08:02:42 588

转载 6.3 字符消息

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P176        在本章前面讲过,通过转义状态信息可把击键消息转换为字符消息。并且提到,仅仅利用转义状态信息是不够的:还必须知道与国家/地区相关的键盘配置。由于这个原因,你不应该自己完成从击键消息到字符消息的转换。Windows 将为你完成这一任务。在前面你已经看到过下面的代码:

2016-08-17 08:01:57 246

转载 6.2 击键消息

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P176        当用户按下一个键时,Windows 将 WM_KEYDOWN 或 WM_SYSKEWDOWN 消息放入具有输入焦点的窗口的消息队列中。当该键被释放时,Windows 把 WM_KEYUP 或 WM_SYSKEYUP 消息放入相应的消息队列中。 键按下键释

2016-08-17 08:01:29 613

转载 6.1.4 击键和字符

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P175        应用程序从 Windows 接收的关于键盘事件的消息可分为击键和字符两种。这与你看待键盘的两种方式是一致的。        首先,你可以认为键盘是键的集合。键盘上仅有一个键表示为“A”。按下此键是一次击键,释放此键也认为是一次击键。同时键盘也是能产生可显示字符或者控制字符的输入

2016-08-17 08:00:50 181

转载 6.1.4 击键和字符

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P175        应用程序从 Windows 接收的关于键盘事件的消息可分为击键和字符两种。这与你看待键盘的两种方式是一致的。        首先,你可以认为键盘是键的集合。键盘上仅有一个键表示为“A”。按下此键是一次击键,释放此键也认为是一次击键。同时键盘也是能产生可显示字符或者控制字符的输入

2016-08-17 08:00:17 221

转载 6.1.3 队列和同步

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P175        当用户按下和释放键盘上的一个键时,Windows 和键盘设备驱动程序将硬件扫描码转换为格式化后的消息。但是,这些消息并不立即被放入应用程序消息队列,而是由 Windows 把这些消息存储在系统消息队列中。系统消息队列是一个单独的消息队列,它被 Windows 用来初步存储用户从键盘

2016-08-16 14:03:22 179

转载 5.6 矩形、区域和裁剪

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P161        Windows 还有其他几个使用 RECT(矩形)结构和区域的绘图函数。一个区域指的是屏幕上的一块空间,它由矩形、多边形和椭圆组合而成。5.6.1  处理矩形        下面三个绘图函数需呀一个指向矩形结构的指针:[cpp] view p

2016-08-16 14:02:30 2501

转载 5.5 GDI 映射模式

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P144        到目前为止,所有的范例程序都是相对于客户区左上角坐标并以像素为单位来绘制的。这是默认的状况,但这并非唯一的选择。有一个称为“映射模式”(mapping mode)的设备环境属性,它能影响几乎所有在客户区绘制的图形。和映射模式紧密相关的还有 4 个其他的设备环境属性,分别为窗口原点(wi

2016-08-16 14:01:37 380

转载 5.4.2 用画刷填充内部

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P142        Rectangle、RoundRect、Ellipse、Chord、Pie、Polygon 和 PolyPolygon 函数绘制的图形内部会使用设备环境的当前画刷(有时也称为图案(pattern))来填充。画刷是一个 8 * 8 像素的很小的位图,Windows 在水平方向上和垂直方向

2016-08-16 14:00:33 360

转载 5.4.1 Polygon 函数和多边形填充模式

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P138        前面已讨论过 5 个区域填充函数,Polygon 是第 6 个画带边框线并填充图形的函数,这个函数的调用类似于 Polyline 函数的调用:[cpp] view plain copyPolygon (hdc, apt, iCount

2016-08-16 13:59:47 10488

转载 5.3.8 绘图模式

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P136        显示器上所显示的线条外观也受定义在设备环境中绘图模式的影响。设想画一条直线,其颜色由画笔的颜色和画线显示区域的共同决定。你能够使用同一支画笔在白色表面上绘制出黑色的线条,在黑色的表面上绘制出白色的线条,同时不必知道表面的确切颜色。这样对你有用吗?通过设定绘图模式,这些功能都是可以做到的

2016-08-16 13:59:00 514

转载 画笔

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P1315.3.5 使用现有画笔        调用本节介绍的任何一个画线函数时,Windows 都会使用当前选入设备环境的“画笔”来绘制直线。画笔决定了线条的颜色、宽度和样式,样式可以是实线、点线或者虚线。画笔的默认设备环境 BLACK_PEN。该画笔会绘制一条实心的宽度为 1 个像素的黑色线条

2016-08-16 13:57:43 284

转载 5.3.4 贝塞尔样条曲线

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P127        英语单词“spline”(曲尺,又称为样条曲线)最初指的是一块可以弯曲的物体,可以是木头、橡皮或金属条,它可以用来在纸张上绘制曲线。例如,如果有一些离散的点,并且想在它们之间画曲线,无论是内插拟合或者外插拟合,都应当首先将这些点描绘在图纸上。接着,固定一个曲尺在这些点上,使用铅笔沿着曲

2016-08-16 13:56:54 541

转载 5.2.5 色彩 ABC

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P91         只能显示黑色像素和白色像素的视频显示器要显示每个像素只需要一位的内存。彩色显示器的每个像素却需要多个位的内存。位数越多,可表示的色彩越多;更精确一点,2 的位数次方就是它可以表示的不同色彩数目。        真彩(full color)视频显示器有每像素 24 位的分辨率

2016-08-16 13:51:32 261

转载 5.2 设备环境

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P103        开始绘图之前,首先让我们在第 4 章的基础上更严谨的讨论一下设备环境。        如果希望在图形输出设备(比如屏幕或者打印机)上绘制图形,必须首先获取设备环境(即 DC)的句柄。当 Windows 把这个句柄交给你的程序,Windows 同时也就给予你使用这个设备的权限。接

2016-08-16 13:50:33 263

转载 4.4 效果更好的滚动

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P91        SYSMETS2 的功能良好,但是他的效率太差,不足以成为其他程序的范本。下面,我们将示范一个更有效的程序。最令人瞩目的是这个新版本的程序将不会使用我们已经讨论过的 4 个滚动函数。相反的,它将使用 Win32 API 中独有的一些新函数。4.4.1  滚动条信息函数

2016-08-16 13:49:31 222

转载 4.3 滚动条

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P82        滚动条是图形用户界面中最好的特性之一。它们很容易使用,并且提供了很好的视觉效果。当需要显示的内容超过窗口的客户区时,不管是文字、图像、表格、数据库记录或者是网页,都可以使用滚动条。        滚动条既可以垂直放置(将内容上下移动),也可以水平放置(左右移动)。你既可以用鼠标单

2016-08-16 13:48:30 581

转载 4.2.1 设备环境

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P66        如前所述,句柄不过是一个数值,Windows 内部使用该数值确定一个对象。用户从 Windows 获取一个句柄,然后用于其他函数。设备环境句柄是程序窗口使用 GDI 函数的“通行证”。有了设备环境句柄,就可以随心所欲地绘制你的客户区。        设备环境(也被简称为 DC)实

2016-08-16 13:47:24 239

转载 4.1.2 有效矩形和无效矩形

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P65        尽管窗口过程必须能够在收到 WM_PAINT 消息时更新整个客户区,但通常它只需要更新其中的一部分,最常见的是更新其中的一个矩形区域。最明显的例子是当一个对话框覆盖了客户区的一部分时:当对话框被关闭时,只有先前被覆盖的那个矩形部分需要重新绘制。        需要重新绘制的部分被

2016-08-16 13:46:32 329

转载 3.2.2 队列消息和非队列消息

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P60        前面提过 Windows 将消息发送给一个窗口,意思是说 Windows 调用了该窗口的窗口过程。但是,一个 Windows 程序同时还具有一个消息循环用户从消息队列中检索和分发消息,其中检索消息是通过调用 GetMessage 实现的,而分发消息是通过调用 DispatchMessag

2016-08-16 13:45:32 536

转载 Windows程序设计第五版——源代码002之SCRNSIZE.c

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P34[cpp] view plain copy/*--------------------------------------------------------     SCRNSIZE.c -- Displays screen size in a me

2016-08-16 13:42:59 537

转载 3.1.12 WM_DESTROY 消息

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P58        WM_DESTROY 是另外一个非常重要的消息。该消息表明 Windows 正处在依照用户的命令销毁窗口的过程中。当用户单击【关闭】按钮或从程序的系统菜单中选择【关闭】时,该消息将会发出。        HELLOWIN 通过调用函数 PostQuitMessage 来对 WM_

2016-08-16 13:41:41 276

转载 3.1.11 WM_PAINT消息

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P56、P64        WM_PAINT消息在 Windows 编程中极其重要。当窗口的客户区的部分或全部“无效”且必须“更新”时,应用程序将得到此通知。这也就意味着窗口必须被“重绘”。        但何种情况下客户区会变为无效?当窗口被首次创建时,整个客户区都是无效的,因为此时应用程

2016-08-16 13:40:27 215

转载 匈牙利命名法

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P45匈牙利命名法会帮助你远离一些错误(bug)。由于变量的名称描述了该变量的用法及其数据类型,你在编程时就不大可能犯数据类型不匹配的错误。本书使用的变量名前缀如下表所示。前缀数据类型c char 或 WCHAR 或 TCHARby

2016-08-16 13:37:06 148

转载 大写标识符

摘录于《Windows程序(第5版,珍藏版).CHarles.Petzold 著》P43一些数值常量的前缀,前缀表明该常量所属的一般类别。前缀含义CS(Category Styel)类风格选项CW (Create Window)创建窗口选项DT (Draw Text)文本绘制选项IDI (ID

2016-08-16 13:36:07 511

WinLicense_32_64_3.0.4.0_Repacked.rar

程序员辛苦的开发成果需要加密才能得到保证安全性,WinLicense是Oreans是著名的软件系统保护公司,提供代码混淆,版本控制、软件保护等多种工具。提供多种加密技术,实现代码虚拟化、阻止反编译,授权管理等功能,该版本是3.0.4的新版本,新测可用,大家可放心下载。网上很多3.XX都是免费demo版本,请勿相信。

2021-09-22

韩忠康第二版mysql视频教程笔记

超详细的讲解mysql的教程,总共43节课程,课时28个小时。内附学习笔记等内容!

2018-06-02

ComponentOne Studio for ActiveX 2012 v3 注册机

葡萄城的componentOne控件是很有名的表格控件,亲测可用!

2017-10-10

vs2012\2013 Visual Assist X 2023

Visual Assist X 2023 可用于vs2012与vs2013,亲测可用,请放心下载

2017-10-10

UG_OPEN API 开发宝典

该教程是本人花了500大洋找南京欧奔公司买的,内容包括基础篇与问答篇,内容讲解精细,都是以代码进行演示。对于初学者是一本帮助极大的教程!

2017-08-01

五轴后处理 cam_c++

本资源是通过读取.CLS格式的文件,再进行转化为5轴CNC可执行的G代码,内附3个工程,分别有AC轴双转台,BC轴,手臂式5轴,内附各种5轴的算法,参考价值极大

2017-08-01

.NET Framework卸载利器------卸载framework 1.0~4.5

.NET Framework卸载利器是一个.net framework卸载工具,例如您像卸载已经安装的某个.net framework的话,如果手动去卸载很难卸载的,利用.NET Framework Cleanup Tool来卸载就方便多了。 支持卸载: .net framework 1.0 .net framework 2.0 .net framework 3.0 .net framework 4.0 .net framework 4.5

2017-08-01

C++全局钩子实现程序监控

利用平台SDK函数实现对应用程序启动的监控

2015-08-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除