• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

用VB在窗口中显示动画图标

发布: 2007-7-14 20:28 | 作者: 佚名    | 来源: 网络转载     | 查看: 36次 | 进入软件测试论坛讨论

领测软件测试网   Windows 3.X系统有一个鲜为人知的地方。首先,选取该系统所带某一应用程序(如文件管理器,画笔,扫雷等)的“帮助\关于***...”菜单弹出对话框后,按下Ctrl和Shift键,同时用鼠标左键双击对话框中应用程序的图标,然后关闭对话框。接下来,重复上述操作(两次打开的应用程序可以不同),再次双击图标,奇迹出现了! 对话框中将出现一面飘扬的Windows旗帜和“Dedicated to all the hard-workin g people of the Microsoft Windows 3.10 Team!”这样一条文字信息。如果你再做一次,一定还有新的惊喜。在Windows 95中,上述现象已不复存在,但是在执行其有关“查找”功能以及缺少快捷方式时,对话框内所显示的来回移动的放大镜或照来照去的手电筒则可谓动画图标的上乘佳作。

  如果能够在我们自己开发的应用程序中恰当地应用动画图标,一定会给程序界面增色不少。

  其实,这些用Visual Basic实现起来是很方便的。

  (1)使用VB所带的ICONWORK或其他图标制作工具制作各动画帧的图标Demo0.Ico,Demo1 .Ico,Demo2.Ico,……

  (2)建立窗口,在合适位置如左上角添加Image(图形)控件,打开其Properties(属性)窗口,将其中的Stretch(伸展性)项置为True,并从Picture(图片)项右栏点开Load Picture( 加载图片)窗口,从其中的文件列表中选取(1)中制作的第1个图标(Demo0.Ico),其余属性取其缺省状态。

  (3)在窗口中添加Timer(计时器)控件,并设置其Interval(时间间隔)属性值(如100ms,该值越大动画速度越慢)。

  (4)编写代码,利用计时器控件每隔一个时间间隔调用一次计时器函数的特性,在该函数中更替图形控件所显示的图标即可获得动画效果。

  下面所附的源程序代码摘自笔者开发的某应用程序,在Windows 95中文版+Visual Basi c 4.0环境下运行效果颇佳。

  附:程序清单(Form5.Frm)

  VERSION 4.00

  Begin VB.Form form5 对话框窗体

  BackColor = & H00C0C000& 背景色

  BorderStyle =3'Fixed Double 边界类型

  Caption ="关于…" 标题

  …… ……

  Top =1980 上边界

  Width =3840 宽度

  Begin VB.Image Imagel 图形控件

  Height =855 高度

  Left =120 左边界

  Picture ="FORM5.frx":0000 图片

  Stretch =-1'True 伸展性

  Top =240 上边界

  Width =975 宽度

  End

  Begin VB.Timer Timerl 计时器控件

  Interval =100 时间间隔(ms)

  Left =360 左边界

  Top =2520 上边界

  End

  Begin VB.CommandButton Commandl 按钮控件

  Caption="确认" 标题

  …… ……

  Top =2520 上边界

  Width =1455 宽度

  End

  ……

  End

  Attribute VB_Name ="Form5"

  Attribute VB_Creatable =False

  Attribute VB_Exposed=False

  Dim count% 图标序号

  Private Sub Form_Load()

  count=-1 置初值

  End SubPrivate Sub Timerl_Timer() 计时器函数

  count=(count+1)Mod 3 更换显示图标

  If count =0 Then

  Image1.Picture=LoadPicture("Demo0.Ico")

  Else If count= 1 Then

  Image1.Picture=LoadPicture("Demo1.Ico")

  Else

  Imagel.Picture=LoadPicture("Demo2.Ico")

  End If

  End Sub

  Private Sub Command1_Click ()

  Form5.Hide 关闭窗口

  End Sub

  …… 

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网