Objective C文本Visual Studio 6Windows 2003Windows 2000设计 / 图形Visual C++ 6.0Windows XPMFC中级开发Visual StudioWindowsC++
任务栏进度条控件






4.14/5 (22投票s)
2005年10月14日
2分钟阅读

261967

3993
如何在任务栏中放置一个进度条控件。
引言
本文介绍了如何将进度条控件放入任务栏。
它是如何工作的?
首先,我们需要创建进度条控件的一个实例。进度条控件将自动附加到任务栏。在启动时,程序会搜索三个特定的HWnd
。这些是Shell_TrayWnd
、ReBarWindow32
和 TrayNotifyWnd
。程序任务、快捷栏等都包含在此窗口中,使用的是ReBarWindow32
类。ReBarWindow32
直接放置在TrayNotifyWnd
窗口旁边。现在我们需要做的就是使用方法Create
创建进度条,但我们不将其添加到主窗口,而是将其添加到任务栏。一个重要的事实是,控件需要自己的消息映射,否则由于我们在任务栏中单击控件时的消息处理,您将获得 100% 的 CPU 使用率。
事实
- 进度条控件直接附加到任务栏。当您启用了 Windows 任务栏的“自动隐藏”选项时,控件会随其移动。
- 当我们需要时,我们需要更新控件
- 将图标添加到托盘通知栏中。
- 将任务栏从水平更改为垂直,反之亦然。
- * 等等..
- 要更新控件,此时我们需要一个计时器(我还没有找到一种广播消息)。
- 控件的父窗口是任务栏的
Shell_TrayWnd
。
使用的其他类
- 由 Chris Maunder 编写的
CTextProgressCtrl
它在哪里工作?
它经过测试
- WinXP
- Win2000 专业版
- Win2003 服务器版
使用此程序/源代码的风险由您自担。本程序的作者不对本程序对您或其他计算机造成的任何损害负责。
许可证
本文未附加明确的许可证,但可能在文章文本或下载文件本身中包含使用条款。如有疑问,请通过下面的讨论区联系作者。
作者可能使用的许可证列表可以在此处找到。