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
……
-
vb教程之用VB在窗口中显示动画图标
本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
JavaScript判断两个数组相等的四类方法
js如何操作video标签
React实战--利用甘特图和看板,强化Paas平
【记录】正则替换的偏方
前端下载 Blob 类型整理
抽象语法树AST必知必会
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程