admin 管理员组

文章数量: 1184232


2024年3月10日发(作者:sql有哪些语句)

维普资讯

2008年第8期 福建 电脑 189 

VB中动画效果的实现 

李艳 

(广东松山职业技术学院计算机系广东韶关512126) 

【摘 要】:在用VB开发应用程序时加入动画之后可使软件具有生动活泼的效果,有时动画效果必不可少。本文主要介 

绍在VB中应用Timer控件、Picture控件、shape控件、PictureClip控件来实现动画效果的关键技术、实现方法和操作步骤。 

【关键字】:VB动画 控件 方法 

构思 

动画由两个基本部分组成。一是物体相对于屏幕的运动,即 

屏幕级动画:二是物体内部的运动。即图片切换的动画。制作动 

画的原理就是画完一幅图形.清除它的屏幕显示部分。再在新位 

置画第二幅图形。如此交替下去。利用人眼的视觉效应,就可以 

产生动画效果.VB实现动画的原理也如此,但VB它不要求编 

程人员详细了解图形如何再现和清除.这些工作由VB提供的 

工具来做。这样就使VB实现动画很方便。编程也很简捷。在VB 

中不管是屏幕级动域.还是图片切换动画,其关键技术是用 

Timer控件来控制图形的移动或显示不同的图象而实现动画效 

果。 

二 关键技术 

Visual Basic中的Timer控件计时器(Timer)控件能有规律地 

以一定的时间间隔激发计时器事件(Timer1而执行相应的事件代 

码.通过给计时器控件的Interval属性设置不同的数值.就可以控 

制计时器运行的时问间隔 Timer控件只有在程序设计过程中可 

见。 

1.Timer控件的属性: 

Timer控件可以使用Name属性与Enabled属性.但最重要 

的是Interval郎时间间隔属性 Interval属性决定了时钟事件之 

间的间隔。以毫秒为单位,取值范围为0.65535。如果把In’ 

tevral属性设置为1000.则表示每秒钟触发一个Timer事件。其 

语法格式. 

Timer.Interval=X。其中.X代表具体的时间间隔。 

2.Timer控件的Timer(定时)事件: 

当一个Timer控件经过预定的时间间隔.将激发计时器的 

Timer事件。使用Timer事件可以完成许多实用功能,如显示系 

统时钟、制作动画,等等。 

三 实例及其实现方法和操作步骤 

1.用Timer控件控制的移动技术。采用控制的移动技术可实 

现屏幕级动画.控制移动方式又可分两种:一是在程序运行过程 

中,随时更改控件的位置坐标Ieft、Top属性,使控件出现动态; 

二是对控件调用MOVE方法.产生移动的效果。 

例:如图1要求红色圆(控件名shape1)绕着小孩(控件名 

图1运行阶段 图2设计阶段 

实现方法和步骤如下: 

1I1.启动VB,新建一个工程。在窗体添加名称为shapel的 

8hape(即图形)控件,在属性窗口设置shape属性为3,Fillcolor属 

性为”&HFF&”。再添加名称为commandl的命令按钮。在属性窗 

口设置Syle属性为1.Picture属性为有上面小孩的图片相应文 

件名本题为:zb/ ̄.jpg。再添加名称为Timerl的计时器控件,在 

属性窗口设置Interval属性为1000.Enabled属性为True。如图 

2。 

1、2.设计控件Timer1的Timer事件过程代码。因为本题的关 

键是用VB中的Timer控件控制Shapel在屏幕中相应位置的移 

动.其实就是Timer事件过程代码的编写。在Timerl的Timer事 

件中编写如下代码: 

Private SubTimerl

— 

rner0 

If Shape1. <=C ̄mmand1.Left+Command1.Width And Shape1.Top>= 

Command1.Top+Command1.Height Then 

ShapeI.I fl=Shape1.Left 4-4OO 使ShapeI往右移动 

Elseif Shape1.Top+Shape1.Heig}lt>=Command1.Top And ShapeI.Left> 

Command1.Left Then 

ShapeI.Top=Shape1.Top一4OO 使ShapeI往上移动 

ElseIf Shaep1.I血4-Shape1.Width>:Command1.Left 111en 

ShaepI.Left=Shape1.Left 4OO 使Shapel往左移动 

Else 

Shape1.Top=Shape1.Top 4-40O 使Shapel往下移动 

End If 

End Sub 

1_3.按F5就可以看到图1中红色圆绕着小孩不停地跑的动 

画效果。 

2、用PictureClip控件实现动画。将PictureClip控件与Pic. 

ture控件或Image控件及Timer控件的组合来完成动画。Pic. 

tureClip控件只有一张图片。将此图片平均分成若干区域,然后 

在程序设计时利用选择控制中的区域.将图动态剪切下来放置 

于图片框中进行显示(即将指定的区域赋值给一个显示控件的 

有关属性.如picture控件的picture属性)。程序控制每间隔一定 

时间剪切并显示一幅图,这样便可产生动画效果。在VB 6.0中 

用PictureC1iD控件实现动域的具体方法和步骤如下: 

2.1I装入Picture ̄D控件:在工具箱中击鼠标右键一选中” 

部件“_+Microsotf PictureCliD controls 6.o_ 然后点击”确定”键即 

可。 

2.2.将PictureClip控件添加到窗体上。按F4键显示属性窗 

口.双击..自定义”属性则出现一个”属性页”对话窗口。选取”图 

片”项。单击”测览”选定一个图片。选取一个图片后我们在“预 

览”框中就可以看见图片全貌。选择”通用属性”项,定义好” 

行“、”列“的值f如”4”、…4’),划分好图形区域。 

2.3.将Picture控件添加到窗体的相应位置上调整大小,放 

在窗体中指定的位置,将PictureClip控件中指定区域,赋值给显 

示控件的picture属性,便可以显示图形了.设PictureClip控件 

区域值为一变量。添加个Timer控件,并在此控件中的timer事件 

中用循环语句改变此变量.就可以实现动画了。在运行时Pic. 

tureClip控件和Timer控件是不可见的。 

2.4.在窗体中编写如下代码: 

Dim a As Integer 在窗体模块中 通用 的 声明 中定义a变量 

private Sub Form_Load0 

指定pieturel的图形为PictureClip控件中的第二个图形区域 

picture1.pieture=PietureClipI.CraphieCell0) 

a=l 

Timer1.Interval=l00 

Elad Sub 

2_5.在Timer控件中的Timer事件中缩写如下代码: (下转第148页) 

维普资讯

148 福建 电脑 2008年第8期 

础上实现TCMP三层协议的模拟.包含应用层到TCP层.再到 

OnRead中.调用方法传递的Socket值就是响应该事件的对象属 

ientSocket.Socket。同样。在ServerSocket的事件OnClien. 

IP层以及网络接口层的模拟.其实也就是按这三层协议进行报 

性Cl

Read中.调用方法传递的参数Socket就是对应于当前发送数 

文的打包和解包。程序的编制是利用Delphi7提供的 

elientSocket和serverSocket将字符串类型的数据在同一局域网 

据客户端的唯一的Socket连接。 

结束语 

内发送。Socket通信在Windows中是排队的形式,由操作系统处 

4、

理.而且接收方和发送方相互协同工作,否则就会造成数据丢 

失。另外。和所有的通信编程一样.SocketSocket编程也遵循数据 

分包传送这一基本规则。也就是说,在Socket编程中。每次发送 

和接收一个包。以保证数据传输的安全性和稳定性,同时也不至 

于过多地占用系统资源。对于ChentSocket组件。它用于请求方。 

也就是说.它的动作是主动地建立连接。serverSocket组件用于 

响应方。它的动作是侦听以及被动接受连接。组件ClientSocket 

关系。并且仅当serverSocket对其接受才表示建立连接。组件 

ServerSocket的属性是动态的 伴随着一个新的ClientSocket与 

随着多媒体应用领域的不断扩展.特别是分布式多媒体应 

用的逐渐成熟.多媒体通信对多媒体通信网络提出了很高的要 

求。大容量的媒体数据在网上的实时传输对窄带网络和包交换 

协议提出了挑战 人们一直关注着那些能够满足交互式和实时 

多媒体通信要求的网络技术的发展。多媒体网络技术的进展将 

直接影响”信息高速公路”的建设速度.并将对人类的生活和生 

产方式产生深远的影响 综上所述下一步在语音实时通信系统 

的属性是相对静态的。它和serverSocket之间只是连接和断开的 

的基础上实现多媒体的实时通信 

参考文献: 

之建立连接的同时.就会产生一个新的Socket与该ChentSocket 

1.c ̄uaw Fox.Peer—tO—PeerNetworks历.wcb Computing,2001,5 

Dana Moore。John Hebder.Peer To Peer.McGraw—Hill Companies,Inc 

对应,保持单独的连接。进行单独的通信。因此,在同一个 

2.

4 

ServerSocket中.可以与多个ClientSocket保持同时连接和各自 

2003.

基于TCP/IP协议的点对点通信Ⅱ】.洛阳师范学院报. 

独立的通信。serverSocket的属性Socket ActiveConnecfions用于 

3.李元{,刘堆群.

表示客户端连接的数量;属性Socket。Connectionsendex1用于访 

4.李元臣.刘雏群.DELPHI下的多线程应用程序Ⅱ】.洛阳师范学院学报. 

问单个与ClienSocket连接的Socket。在独立的ChentSocket中。 

属性Socket。Data是一个指针,缺省值是nd;在ServerSocket的 

shtml 

5.P2P技术概笕.http://www.yesl【y.com/2oo1O926/198848

1.

每个独立的Socket。ConnectionsOndex]中.属性Data也是一个指 

6.张联峰.刘乃安等.对等同P2P技术Ⅱ】.计算机工程与应用.2003.12 

针,缺省值是nil。因此.可以通过该指针建立并保存各自独立的 

7.李元臣.基于ASP的Interact应用程序开发洛阳师范学院学报Ⅱ】.2003. 

2002.2 ’ 

2000.2 

相关信息,用于实现各自独立的通信。而在ClientSocket的事件 

(上接第151页) 

5 

-—- -+-+一+-+一十 

(3)把含有sqhte应用程序的mmfs下载到S3C2410uCLin. 

UX上的tmp目录(此目录必须是可读写的),运行Sqlite即可,现 

在Sqlite已经可以在arm/linux下跑起来.创建一个test表进行 

文档供参考.对于想进一步研究关系数据库实现细节的学生,阅 

读SQLite源代码是个不错的方法。 

5、SQLite在嵌入式操作系统在uC/inUX下的移植测试 

SQLite是一个通用的免费嵌入式数据库,为了将SOLite应 

测试。语句如下: 

Sqlite>create table tste(name vttrehar(20).ourn smallint); 

用到¥3C2410+LinUX环境中.首先需要把SQLite移植到 ux 

sqlite>insert into test v ue AMEl .1); 

平台上,然后再将SQUte编译成Linux下的一个普通应用程序. 

sqlite>insert into test v ue NAME2",2); 

就可以通过嵌入式C和APt开发具体的应用程序。移植测试的 

Sqlite>select 3 from test; 

主要步骤如下: 

NAMElll 

NAME212 

(1)将下载的kn山【版本的SQLite软件包解压到uChnux— 

dist/user目录。 

Salite>tables 

T 6t 

sqlite>q 

(2)完成用户应用程序的如下设置: 

在uChnux-dist/user/Make/de、uChnux--disffConfigure.help、u. 

6、结束语 

本文介绍了SQLite数据库的技术特点、体系结构、应用领 

的下面加上Sq1jte项,把Sqhte添加为uC ux的一个新User- 

域以及在windows和嵌入式Linux下的开发应用.重点研究了 

etsting项。再选中”MiseeIlaneous Apphcafions”。 

SQLite数据库的编译、移植和嵌入式数据库应用程序的开发等 

在uClinux中修改sqhte/main.mk、sqlite/src/os.e、sqhte/src/ 

内容,基于SQLite开发应用程序比较简单,在嵌入式应用中有 

sheH.e三个文件和添加sqlite/Makefile文件.从而按照uClinUX— 

很好的前景。 

Chnux--dist/eonfig in三个文件中查找”cpUtt有关选项.然后在它 

dist/Documentation/Adding—User—Apps—H0W.rO的说明添加 

Sqlite作为一个用户应用程序.将其作成一个Shetl。 

_

参考文献: 

通过make dep、make lib

only、make user only、make rotors、 

1.金恩海.嵌入式数据库系统设计与实现Ⅱ】.信息技术,2006(5):181 ̄183 

机与嵌入式系统应用.2005(4):21 ̄24 

黄布教,张晓华.基于ARM2Linux的SQLite嵌入式数据库技术D】.单片 

make image等操作编译uClinux的kerne1.并在uClinux--dist/im. 

2.

ages下生成包含有sqlite的mmfs文件系统。 

---

4- 

(上接第189页) 

PriVate Sub Timed

Tim ̄,O 

对于那些对VB动画制作感兴趣的人有很大的帮助。 

参考文献: 

1.<visu|lBasic 6.0中文版入门与提高)张树兵戴红陈哲嫡著确

京:清华大学出版社 

北 

a=a+l 每发生一次 n 事件时改变变量a的值 

If a=16 Then a=0 利用变量值的改变给Dicturel控件指定不同的图形 

pieture1.picture=Picture.ClipI.GraphicCell(a) 

End&由 

2.6按F5就可以看到动画效果了 

结柬语 

2.<Ⅵsu B c 6.0程序设计) 赵万龙蝙著 北京:中国铁道出版社 

一一Visual B c 6.0语言程序设计)刘炳文扬明福陈 (--/ ̄教程…

本文给出了在VB中实现动画效果的关键技术、几种不同 

3.

的实现方法的操作步骤,做出了各种生动活泼的动画效果。相信 

定中嫡著 


本文标签: 控件 动画 实现 属性 技术