VC++实现自绘制的虚拟按钮
- 格式:pdf
- 大小:546.69 KB
- 文档页数:5
( )用 On an ( 函数 绘制 按钮 图形 ; 2 P it ) ( )处理 窗 口消息 wM— US MOVE、 3 MO E WM一
收 稿 日期 :0 1 0 — 2 21— 4 5 作 者 简 介 : 燕 芬 (9 3 )女 , 西 桂 平 人 , 黄 18 一 , 广 工程 硕 士 , 教 , 究 方 向 : 算 机 技 术 。 助 研 计
・ 6・ 5
萍 乡高等 专科 学校 学报
21 0 1年
I UT B TOND 0WN 和 W M—I UT NUP 的 响 应 B TO
有 了上述 的定 义 , 我们 就可 以在 C P文 件 ( 话 P 对
框类 的 , 同) 的 Onnt ao ( 函数 初 始化按 钮 : 下 里 I i lg ) Di
按 钮 , 不 从 C u tn类 派 生 出按 钮 , 是通 过代 码 也 Bt o 而 设计出按钮 。 类 自绘制 按钮跟随 鼠标 不同操作而相应 这
准按 钮 控件 都过 于简单 , 缺美 感 。 欠 正是这 些 按钮 , 造
成 用 VC编 写 出 来 的程 序 , 别 的程 序 相 对 比, 用 与 给
f r(n = 0;i OP o iti < ERAT1 0N — BUTT0N —
函数 , 响应 鼠标 的状态 ; ( )创建 多线程 C e tTh ed ) 以处 理 鼠标 的 4 rae ra ( , 动作 。
3主 要 相 关 代 码
NUM ;i + ){ +
m Op r t Bu t s ea i on ton
我 们设 计 虚 拟 按钮 , 不是 为 了改 变 按 钮 的功 能 ,
而 是为 了改 变按钮 在 鼠标 的不 同操作下 显示 的状 态 。
所以 , 现实虚 拟按 钮 , 需包 括 以下三个 步骤 :
( )绘 制 按 钮 图形 , 对 话 框 绘 制 出按 钮 的模 1 在 样, 根据 鼠标 不 同操 作 显示 不 同按 钮 图形 ;
本 文 提 供 的 代 码 编 译 环 境 是 VC 0 5 在 20。
VC2 0 0 5新 建 一个 MF p l ain工程 , 程 名 为 C A pi t c o 工
很强的移植性 , 不仅仅 能绘 制虚拟按钮 , 可采 用此设计思路 绘制导航 栏和工具栏。 还
关键词 : VC; 自绘 制 ; 拟 按 钮 虚 中 图分 类 号 : 3 1 1 TP 1 . 1 文献 标 识 码 : A 文 章 编 号 :0 7 1 9 2 1 )3 0 5 — 0 l 0 ~9 4 (0 1 O — 0 5 5
现 虚拟 按钮 , 包括 : ( )在 On nt ilg ) 1 Ii ao ( 函数初 始化按 钮 ; D
部分 程 序员 已设计 出不 同 的派 生 于 C utn的 B to
类 , 享 了 出来 , 得这 些派生 类 在 网络里 大量存 在 。 共 使
大多 数程 序员 直接下 载 引用这 些 派生类 , 制 出来 的 绘 按钮 也往 往局 限 于所引 用派 生类 里 的功能 , 以满足 难
1前 言
程序 设计 的需 要 。
用 VC 编 写 出来 的 程 序 , 乎 都 会 用 到 按 钮 控 几 件 , 实现人 机交 互 。众所 周 知 , 论是 VC6 0 还 是 以 无 ., VC 0 5 或 是 VC更 高版本 的 开发 工具 , 提供 的 标 20 , 所
本 文提供 另一 种 自绘制按 钮 的思路 : 不使 用标 准
( )捕 捉 鼠标 状 态 , 括 鼠标 移 动、 下 和抬 起 2 包 按
的动作 。 ( )响应 鼠标 的 动 作 , 理按 钮事 件 , 现按 钮 3 处 实
的功 能 。
许 多跟 窗 口有 关 的功 能 , 比如 图标 和颜 色 , 现 多姿 实
多彩 的按 钮Leabharlann 。 按 照 上述 的虚拟 按 钮设 计 思路 , 用 VC+ +提 利 供 的 MF C基础 类 库 , 我们 主 要使 用 以下 几个 函数 实
第 2 卷第 3 8 期
。
萍 乡高等 专科学 校 学报
J u n l fP n xa g Co lg o r a ig in l e o e
21 0 1年 6月
Jn .0 1 u e 2 1
Vo . 8 NO. 12 3
V C+ + 实 现 自 绘 制 的 虚 拟 按 钮
黄 燕 芬
( 东 肇庆科 技 职业技 术 学院 , 东 肇庆 广 广 5 61 ) 2 1 4
摘
要 : 文介绍如何使用 V 本 C+ + 编 写 实 现 自绘 制 的虚 拟 按 钮 。 类 自绘 制 的虚 拟 按 钮 , 不是 派生 于 VC提 供 的标 这 并
准按钮 , 而是 通 过代 码模 拟按 钮 的 状 态 , 现按 钮 的 功 能 , 有 很 强 的实 用 性 。本 文 提 供 的设 计 思 路 和 实 现 代 码 , 实 具 具有
变 化的图形 , 仿按钮的 状态 , 现按钮 的功能 , 模 实 始终都
没有使用 到标准按钮控件, 故将其命名为虚拟按钮 。
2虚拟 按钮 的设 计思 路
户 留下 界面 简单 , 缺乏 美观 的印 象 。虽说 简单 的按 钮
不 影 响程 序 的功 能 , 丑 陋 的界 面 , 一 定 程度 上 会 但 在 影 响 了程序 的使 用价值 。 为了提 高程 序界 面 的美观 与友 好 , 序 员往往 考 程 虑使 用 自己绘制 的按 钮 。 目前普 遍使 用 的 自绘 制按 钮 , 设计 思 路是 给已 其 存 在 的标 准按钮 添加 其他 功能 。做 法是 , 标准按 钮 为 创 建 派 生 于 C u tn类 的 类 , 后 在 派 生 类 添 加 自 Bt o 然 己 需 要 的 功 能 。在 MF 中, 有 的控 件 类 都 是 由 C 所 C d类 派生 的 , 可 以在派 生 于 C u tn的类 添加 Wn 故 Bt o