这几天在学通用控件的时候遇到了一些小问题,经过一段时间的折腾终于把这部分给搞定了~
网络上对win32汇编中Progress Bar的使用没有什么特别详细的教程或者说明,虽然Progress Bar也是通用控件的一种,而对于通用控件而言使用方法也基本一致,但是对于特定的控件在使用方法上还是有一些细微的差别,于是本文将以Progress Bar为实例详细的介绍其使用方法。
本文实例实现功能很简单:窗口中有一个进度条,进度条满了之后自动退出窗口。
使用Progress Bar的一般步骤如下:
1.调用InitCommonControls 函数进行一些初始化工作(调用该函数仅仅是为了在我们程序的可执行文件的PE头中的引入段中放入引用了comctl32.dll的信息),当然还得引入相应的头文件 comctl32.inc 、 comctl32.lib
2.用常规方式创建父窗口--(RegisterClassEx-->CreateWindowEx-->ShowWindow-->UpdateWindow-->消息循环-->窗口过程)
3.窗口过程中要实现以下步骤:(1)在消息WM_CREATE中创建通用控件Progress Bar、用SetTimer设置定时器。(2)在消息WM_TIMER中处理定时器发送的消息。(3)在消息WM_CLOSE中退出定时器
下面是源代码:
.386
.model flat,stdcall
option casemap:none
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Include 文件定义
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
include windows.inc
include gdi32.inc
includelib gdi32.lib
include user32.inc
includelib user32.lib
include kernel32.inc
includelib kernel32.lib
include comctl32.inc
includelib comctl32.lib
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 数据段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

本文介绍了如何在Win32汇编中使用通用控件Progress Bar,通过一个简单的实例展示了创建进度条并在满额时关闭窗口的过程。主要内容包括调用InitCommonControls函数初始化、在WM_CREATE中创建控件、设置定时器,以及处理WM_TIMER和WM_CLOSE消息。在创建Progress Bar时需要注意设置WS_CHILD和WS_VISIBLE属性,并理解PBM_SETRANGE和PBM_STEPIT消息的作用。
最低0.47元/天 解锁文章
1482

被折叠的 条评论
为什么被折叠?



