⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 自 动 隐 藏 的 声 象 按 钮 .htm

📁 对于学习很有帮助
💻 HTM
字号:
<html>

<head>
<link REL="stylesheet" HREF="/style.css" TYPE="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>计算机世界日报:
自动隐藏的声象按钮
</title>
<!--***********-->
</head>

<body bgcolor="#FFFFFF" >














<p><br>
<font color="#b904e8"><b><em><a href="class.htm">返回</a></em></b></font>
<center>
<font color="#0000c0"><h2>
自 动 隐 藏 的 声 象 按 钮
</h2></font>

<h3>海 南 大 学 
<br>叶 斗 彪
</h3>
</center>
<p><font color="#ffffff">----</font>

[ 本 文 为 摘 略,<a href="041401-05.zip"> 全 文 可 下 载</a>,Zip 157KB
<p><font color="#ffffff">----</font>
 另 有 以 下 压 缩 文 件 可 以 下 载:
<p><font color="#ffffff">----</font>
 <a href="041401-05-exe.zip"> 示 例 的exe</a> 402KB;
<p><font color="#ffffff">----</font>
 <a href="041401-05-pas.zip"> 源 程 序</a> 1KB;
<p><font color="#ffffff">----</font>
 <a href="041401-05-dfm.zip"> 主 窗 体</a> 280KBKB ]
<p><font color="#ffffff">----</font>
 随 着 计 算 机 的 日 益 普 及 和 多 媒 体 技 术 的 不 断 发 展, 多 媒 体 计 算 机 辅 助 教 学(MCAI) 软 件 正 改 变 人 们 传 统 的 学 习 方 式。MCAI 软 件 的 操 作 界 面 赏 心 悦 目, 特 别 是 具 有 音 响 效 果 且 能 自 动 隐 藏 的 图 象 按 钮 或 菜 单, 图、 文、 声 并 茂, 确 实 为 软 件 添 色 不 少, 深 受 用 户 喜 爱。 以 下 介 绍 用Delphi 实 现 上 述 功 能 的 技 术。
<p><font color="#ffffff">----</font>
<b>准 备 工 作</b>
<p><font color="#ffffff">----</font>
 建 好 应 用 软 件 主 目 录C:\AutoHide 及 其 子 目 录Images 和Sounds。 作 为 软 件 主 界 面 的 背 景 图 象 的 位 图 文 件Background.bmp, 及 作 为 按 钮 图 象 的 位 图Chimera.bmp 都 存 入Images 目 录 中。 将 声 音 文 件Growl.wav 存 入Sounds 目 录。
<p><font color="#ffffff">----</font>
<b>图 象 按 钮</b>
<p><font color="#ffffff">----</font>
1 . 启 动Delphi 3.0 IDE, 新 建 项 目AutoHide.dpr, 主 窗 体 单 元 命 名 为Main.pas, 存 入C:\AutoHide 目 录。 在 主 窗 体 上 放 入 三 个TImage 组 件, 主 要 属 性 按 表1 设 置。
<p><font color="#ffffff">----</font>
 表1  主 窗 体 和 各 组 件 属 性 设 置
<pre>
 组  件	 属  性	 设  置
Form1	Caption	Auto Hide Button
Name	MainForm
Image1	Align	alClient
Name	BackgroundImage
Picture	(TBitmap)
Stretch	True
Visible	True
Image2	Align	alNone
Name	PictureImage
Picture	(TBitmap)
Stretch	True
Transparent	True
Visible	False
Image3	Align	alNone
Cursor	crHandPoint
Name	ButtonImage
Picture	(None)
Stretch	False
</pre>
<p><font color="#ffffff">----</font>
BackgroundImage 的Picture 属 性 装 入Background.bmp,PictureImage 的Picture 属 性 装 入Chimera.bmp。ButtonImage 重 叠 于PictureImage 之 上, 置 于 背 景 图 象 的 特 定 位 置。
<p><font color="#ffffff">----</font>
2 . 建 立ButtonImage 的OnMouseMove 事 件, 当 鼠 标 移 至 其 上 时PictureImage 显 现:
<pre>
PictureImage.Visible:=True;
</pre>
<p><font color="#ffffff">----</font>
3 . 建 立BackgroundImage 的OnMouseMove 事 件, 当 鼠 标 移 开ButtonImage 时PictureImage 隐 藏:
<pre>
	PictureImage.Visible:=False;
</pre>
<p><font color="#ffffff">----</font>
4 . 创 建ButtonImage( 注 意: 不 是PictureImage) 的OnClick 事 件, 以 响 应 鼠 标 点 击 完 成 规 定 动 作。 不 失 一 般 性, 在 此 仅 显 示 一 行 信 息。
<pre>
	MessageBeep($FFFF);
	ShowMessage('Welcome to the Delphi.');
</pre>
<p><font color="#ffffff">----</font>
5 . 编 译、 运 行。 软 件 启 动 后 进 入 主 界 面, 在 背 景 图 象 上 没 有 菜 单, 也 没 有 按 钮, 如 图1 所 示。
<p><font color="#ffffff">----</font>
 当 鼠 标 移 至 猎 豹 头 部 时, 豹 头 变 成 狮 头 按 钮, 且 鼠 标 变 为 手 指, 如 图2 所 示。
<p><font color="#ffffff">----</font>
 当 鼠 标 移 出 狮 头 范 围 时, 狮 头 隐 藏, 恢 复 主 界 面 图 象。 若 点 击 狮 头 按 钮, 则 出 现 信 息 窗( 见 图3):
<pre>
Welcome to the Delphil.
</pre>
<p><font color="#ffffff">----</font>
<b>音 响 效 果</b>
<p><font color="#ffffff">----</font>
 如 果 要 在 上 述“ 自 动 隐 藏” 按 钮 加 上 音 响 效 果, 可 以 在 狮 头 出 现 时 利 用PlaySound() 播 放 一 个 声 音 文 件(.wav)。
<p><font color="#ffffff">----</font>
 但 是, 不 能 将PlaySound() 直 接 加 入ButtonImage 的OnMouseMove 事 件 中。 这 是 因 为, 当 鼠 标 在 按 钮 上 移 动 时,PlaySound() 会 不 断 重 复 执 行。 务 必 确 保 按 钮 出 现 时 声 音 文 件 只 播 放 一 次 ! 须 如 此 这 般:
<p><font color="#ffffff">----</font>
1. 为 调 用PlaySound() 函 数, 并 控 制 声 音 文 件 的 播 放 次 数, 在Main.pas 单 元 的implementation 段 加 入:
<pre>
	uses
	  mmsystem;
	var
	  noHide: Boolean;
</pre>
<p><font color="#ffffff">----</font>
2. 创 建 主 窗 体MainFrom 的OnCreate 事 件 处 理 程 序, 以 初 始 化noHide 变 量:
<pre>
	noHide:=True;
</pre>
<p><font color="#ffffff">----</font>
3. 将ButtonImage 的OnMouseMove 事 件 处 理 程 序 改 为(begin 与end 之 间 的 语 句):
<pre>
	if noHide then
	begin
	  PictureImage.Visible:=True;
	  PlaySound('Sounds\Growl',0,SND_ASYNC);
	  noHide:=False;
	end;
</pre>
<p><font color="#ffffff">----</font>
4. 将BackgroundImage 的OnMouseMove 事 件 处 理 程 序 改 为(begin 与end 之 间 的 语 句):
<pre>
	PictureImage.Visible:=False;
	noHide:=True;
</pre>
<p><font color="#ffffff">----</font>
 重 新 编 译 和 运 行。 此 时, 当 鼠 标 移 至 猎 豹 头 部 时, 张 牙 舞 爪、 咆 哮 着 的 狮 头 出 现, 惊 心 动 魄。
<p><font color="#ffffff">----</font>
 以 上 例 程 编 译 和 运 行 环 境 是Delphi 3.0 和 中 文Windows 98。



 



<p align="right"><small><em>中国计算机世界出版服务公司版权所有</em></small> 
<br>
</p>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -