在VB6.0中播放GIF动画
2008-02-23 06:55:57来源:互联网 阅读 ()
---- GIF 动 画 格 式 文 件 是 一 种 动 态 存 储 的 图 形格 式 文 件。 在 内 容 相 同 的 条 件 下, 与 其 它 格式 文 件 相 比, 由 于 它 占 用 的 存 储 空 间 少, 且制 作 手 段 成 熟, 可 浏 览 的 软 件 工 具 也 很 多,所 以 倍 受 设 计 者 的 青 睐。 然 而 令 人 遗 憾 的 是, 在Visual Basic 中, 无 论 是 多 媒 体 控 件MCI、MCIWnd, 还 是Animation 控 件, 甚 至 调 用
Windows API 函数 都 无 法 播 放GIF 格 式 的 动 画 文 件。 造 成 这 一现 象 的 原 因 在 于GIF 动 画 格 式 文 件 不 是VB 多 媒体 控 件 所 支 持 的 视 频 格 式 文 件(VB 多 媒 体 控件 所 支 持 的 视 频 格 式 文 件 主 要 有:AVI 格 式、MOV 格 式、FLI 格 式、FLC 格 式 等)。 以 往 我 们 的 解决 方 法 是: 首 先 利 用 一 些 格 式 转 换 工 具, 比如GIF Movie Gear 将GIF 格
式 的 动 画 文 件 转 换 为AVI格 式 的 动 画 文 件, 然 后 再 用 多 媒 体 控 件MCI和MCIWnd 进 行 播 放。 但 这 种 做 法 主 要 存 在 以 下两 个 缺 陷:
---- 1 . 所 形 成 的AVI 格 式 动 画 文 件 太 大( 常 常是GIF 格 式 文 件的 几 十 倍), 从 而 影 响 系 统 的效 率。
---- 2 . 所 形 成 的AVI 格 式 动 画 文 件 往 往 带 有比 较 复 杂 的 调 色 板 信 息, 所 以 当 程 序 在 播 放这 种AVI 格 式 动 画 文 件 时, 如 果 还 兼 有 动 态 显示 的 文 字 和 图 象 信 息, 则 整 个 画 面 就 会 产 生抖 动 和 闪 烁, 从 而 使 显 示 效 果 大 受 影 响。
---- 为 解 决 这 个 问 题, 我 们 在 此 提 出 一 个 全新 的 处 理 方 案 : 通 过 在VB 中 调 用IE 浏 览器 来 实 现GIF 动 画 的 播 放, 实 际 使 用 表 明: 效果 甚 好。
---- 一、 浏 览 器IE 和WebBrowser 控 件
---- 众 所 周 知, 运 行VB6.0 需 要 安 装 浏 览 器IE4.0或 以 上 版 本, 当IE4.0 和VB6.0 安 装 完 成 后, 我 们便 可 以 在VB6.0 中 使 用IE 所 提 供 的WebBrowser 控 件播 放GIF 动 画 了。 具 体 方 法 如 下:
---- 1 . 由 于WebBrowser 控 件 并 不 是VB 的 基 本 控件, 因 此 在 使 用 该 控 件 之 前 必 须 先 将 其 装 入工 具 箱 中。 装 入 方 法: 在 工 具 箱 中 点 击 鼠 标右 键 → 选 中“ 部 件” → 复 选Microsoft InternetControls → 然 后 点 击“ 确 定” 键 即 可。
---- 2 . 选 取WebBrowser 控 件( 注 意 不 同 版 本IE的WebBrowser 控 件 的 图 标 是 不 同 的,IE4.0 中的WebBrowser 控 件 的 图 标 是 一 个 地 球;IE3.0 是 一个 搜 索 图 标。), 添 加 到 窗 体 的 相 应 位 置 上。
---- 3 . 设 计 相 应 代 码, 通 过 使 用WebBrowser 控件 的Navigate 方 法 播 放GIF 动 画 文 件。
---- Navigate 方 法 的 语 法 格 式 为:
WebBrowser 控 件 名.Navigate URL [Flags,][TargetFrameName,][PostData,][Headers]
---- WebBrowser 控 件 支 持 的 主 要 方 法 有:
GoBack — — — 回 退 到 上 一 屏。
GoForward — — — 进 入 到 下 一 屏。
GoHome — — — 回 家。 即 回 到 主 页。
Stop — — — 停 止 导 航。
Refresh — — — 刷 新。
Navigate — — — 导 航。
---- WebBrowser 控 件 所 响 应 的 事 件:
---- BeforeNavigate 事 件 — — — 在 开 始 导 航 前 发 生。 一 般 在 此 获 取 完 整 的URL 字 符 串。
---- WebBrowser 控 件 最 主 要 的 参 数:
---- URL — — — 获 得 导 航 用 的 标 准URL 字 符 串。例 如: 它 能 将”www.MicroSoft.Com” 自 动 翻 译 为” http:// www.MicroSoft.Com”.URL 是Uniform Resource Locator 的 缩 写, 是 在Internet 的WWW 服 务 程 序 上 用 于 指 定 信 息 位 置 的 表 示 方 法。
---- 下 面 我 们 结 合 一 个 实 例 进 行 具 体 说 明。这 是 一 个“ 画 中 画” 滚 动 显 示 应 用 程 序, 界 面 由 循 环 滚 动 显 示 的 文 字、 背 景 图 象、 和 播 放 的GIF 动 画 三 部 分 组 成。 其 中 循 环 显 示 的 文 字 用 透 明 的Label 控 件 实 现; 动 画 用WebBrowser 控 件 实 现 播 放。
---- ① 所 需 控 件:
---- 本 程 序 需 要 一 个PictureBox 控 件、 一 个Label 控 件、 一 个WebBrowser 控 件、 一 个Timer 控 件。
---- ② 各 控 件 的 属 性 设 置 如 下:
控件名称 属性 设置值 含 义
Label1控件 BackStyle 0 设置Label1控件的背景是透明的。
Timer1控件 Interval 200 设置每0.2秒发生一次Timer1_Timer()事件。
---- ③ 各 事 件 的 相 应 代 码 如 下:
首 先 定 义 一 个 变 量, 以 便 用 它 来 存 放 需 要 滚 动 显 示 的 字 符 串。
Dim aa As String
在Form_Load() 事 件 中 进 行 初 始 化 工 作, 具 体 代 码 如 下:
Private Sub Form_Load()
Picture1.Picture = LoadPicture(App.Path & "\demo1.jpg")
WebBrowser1.Navigate (App.Path & "\new1.gif")
---- aa = " 这 是 一 个 利 用 网 络 浏 览 器IE 中WebBrowser 控 件 制 作 的GIF 动 画 播 放 程 序。 "
Label1.ForeColor = QBColor(11)
Label1.FontSize = 18
Label1.Caption = aa
End Sub
◆ 在Timer1_Timer()事件中,每隔0.2秒改变
一次Label1控件的Caption属性值。
Private Sub Timer1_Timer()
` 让字符串头尾相接,以便形成滚动效果。
aa = Mid(aa, 2, 59) Mid(aa, 1)
Label1.Caption = aa
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:VB多媒体程序设计
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash