Akkuman 的博客

习技术,不积跬步无以至千里,不积小流无以成江海
2018 年 02 月 0 篇文章

Win32汇编学习(11):对话框(2)

我们将进一步学习对话框,探讨如何把对话框当成输入设备。如果您看了前一篇文章,那就会发现这次的例子只有少量的改动,就是把我们的对话框窗口附属到主窗口上。另外,我们还要学习通用对话框的用法。理论:把对话框当成一个输入设备来用确实是非常地简单,创建完主窗口后,您只要调用函数 DialogBoxParam 或 CreateDialogParam 就可以了,前一个函数只要在对话框的过程处理函数中处理相关的消息就可以,

Win32汇编学习(10):对话框(1)

现在我们开始学习一些有关 GUI 编程的有趣的部分:以对话框为主要界面的应用程序。理论:如果您仔细关注过前一个程序就会发现:您无法按 TAB 键从一个子窗口控件跳到另一个子窗口控件,要想转移的话只有用鼠标一下一下地去点击。对用户来说这是不友好的。另一件事是如果您象前一课中那样把主窗口的背景色从白色改成灰色,为了子窗口控件无缝地作相应地改变,您必须仔细分类所有子窗口。造成上述诸多不便的原因是子窗口控件本来是为

Win32汇编学习(9):窗口控件

这次我们将探讨控件,这些控件是我们程序主要的输入输出设备。理论:WINDOWS 提供了几个预定义的窗口类以方便我们的使用。大多数时间内,我们把它们用在对话框中,所以我们一般就它们叫做子窗口控件。子窗口控件会自己处理消息,并在自己状态发生改变时通知父窗口。这样就大大地减轻了我们的编程工作,所以我们应尽可能地利用它们。本课中我们把这些控件放在窗口中以简化程序,但是大多数时间内子窗口控件都是放在对话框中的。

Win32汇编学习(8):菜单

这次我们将在我们的应用程序中加入一个菜单。理论:菜单可以说是 WINDOWS 最重要的元素之一。有了它,用户可以方便地选择操作命令. 用户只要细读一下所有的菜单项就可以明了应用程序所提供的大概功能, 而且可以立即操作, 无须去阅读手册了. 正因为菜单给了用户一种方便的方式, 所以您在应用程序中加入菜单时就要遵守一般的标准. 譬如: 一般头两个菜单项是 "File" 和 "Edit", 最后是 "Help", 您可以在这中间插入您

Win32汇编学习(7):鼠标输入消息

这次我们将学习如何在我们的窗口过程函数中处理鼠标按键消息。例子演示了如何等待鼠标左键按下消息,我们将在按下的位置显示一个字符串。理论:和处理键盘输入一样,WINDOWS 将捕捉鼠标动作并把它们发送到相关窗口。这些活动包括左、右键按下、移动、双击、滚轮消息 WM_WHEEL 等。WINDOWS 并不像处理键盘输入那样把所有的鼠标消息都导向有输入焦点的窗口,任何鼠标经过的窗口都将接收到鼠标消息,无论有否输入焦点

Win32汇编学习(6):键盘输入消息

这次,我们将要学习 WINDOWS 程序是如何处理键盘消息的。理论:因为大多数的 PC 只有一个键盘,所以所有运行中的 WINDOWS 程序必须共用它。WINDOWS 将负责把击键消息送到具有输入焦点的那个应用程序中去。尽管屏幕上可能同时有几个应用程序窗口,但一个时刻仅有一个窗口有输入焦点。有输入焦点的那个应用程序的标题条总是高亮度显示的。实际上您可以从两个角度来看键盘消息:一是您可以把它看成是一大堆的按键消息的

Win32汇编学习(5):绘制文本2

这次我们将学习有关文本的诸多属性如字体和颜色等。理论:Windows 的颜色系统是用 RGB 值来表示的,R 代表红色,G 代表绿色,B 代表蓝色。如果您想指定一种颜色就必须给该颜色赋相关的 RGB 值,RGB 的取值范围都是从 0 到 255,譬如您想要得到纯红色,就必须对 RGB 赋值(255,0,0),纯白色是(255,255,255)。您可以用函数 SetTextColor 和 SetBkColor 来 “绘制” 字符颜色和背景色

Win32汇编学习(4):绘制文本

这次,我们将学习如何在窗口的客户区 “绘制” 字符串。我们还将学习关于 “设备环境” 的概念。理论:“绘制”字符串 Windows 中的文本是一个 GUI(图形用户界面)对象。每一个字符实际上是由许多的像素点组成,这些点在有笔画的地方显示出来,这样就会出现字符。这也是为什么我说 “绘制” 字符,而不是写字符。通常您都是在您应用程序的客户区 “绘制” 字符串(尽管您也可以在客户区外 “绘制”)。Windows 下的“绘制” 字符

Win32汇编学习(3):简单的窗口

这次我们将写一个 Windows 程序,它会在桌面显示一个标准的窗口,以此根据代码来学习如何创建一个简单的窗口。理论:Windows 程序中,在写图形用户界面时需要调用大量的标准 WindowsGui 函数。其实这对用户和程序员来说都有好处,对于用户,面对的是同一套标准的窗口,对这些窗口的操作都是一样的,所以使用不同的应用程序时无须重新学习操作。对程序员来说,这些 Gui 源代码都是经过了微软的严格测试,随时拿来

怎样建立你自己的MASM导入库

byIczelion(翻译:花心萝卜 yqzq@163.net)9.5.2000 这篇短文是讲述关于建立 MASM 导入库(importlibraries)技巧,我假设你已经知道什么是导入库。在下面,我将集中讲述建立 MASM 导入库的方法。MASM 导入库的格式:MASM 和 VC++ 可以使用相同的导入库,MS 导入库使用不同于 TASM 的 OMF 格式的变更的 COFF 文件格式,这就是为什么 TASM 和 MASM 的导入库不能互