APP下载

PowerBuilder中动画的设计与实现

2013-12-05周小平

科技致富向导 2013年22期
关键词:程序开发字符串控件

周小平

【摘 要】文章介绍了PowerBuilder中一些常用事件、常用函数,在此基础上详细介绍了如何实现文字的滚动以及窗口的移动。

【关键词】PowerBuilder;动画;窗口

0.引言

作为一款优秀的企业级数据库前端应用开发工具,不仅提供简洁友好的用户界面,而且拥有功能强大的数据窗口技术以及性能优越的数据库访问能力,所以很多程序开发人员都很喜欢它,PowerBuilder是当前最流行的数据库前端开发工具之一。

在PowerBuilder中定义了很多事件和函数,程序开发人员利用这些事件和函数不仅能提高工作效率,而且能实现各种功能,比如查询、录入等。本文在介绍相关的常用事件、常用函数以及使用方法之后,通过具体的实例在PowerBuilder来实现动画效果。

1.基本知识介绍

要想在PowerBuilder实现动画效果,我们可以利用Timer事件和Timer函数。

1.1常用事件

Open事件:在窗口打开之后、显示之前发生,这时系统已经包含窗口所有属性以及窗口中的所有控件。

Timer事件:定时器事件,跟Timer ()函数结合在一起,给程序开发者提供了许多便利。

1.2常用函数[1]

Timer (number ):设置一个时间间隔,在设置的时间间隔内反复触发指定窗口的定时器事件,从而达到用户想要的目的。

Space( ):返回指定数目的空格组成的字符串,如space(3),则返回具有三个空格的字符串;

Len(string ):取得指定字符串的长度。

Right(string,n):从指定字符串尾部取指定个数的字符。

Left(string,n):得到字指定符串左部指定个数的字符。

SetRedraw():用来关闭或开启控件的重画功能。

2.动画效果的实现

在PowerBuilder中我们要想直接播放动画文件(如flash动画文件)是有一定的难度的,但是我们要想实现一些相对简单的动画效果还是比较容易的,我们可以利用PowerBuilder中的Timer()来实现此效果。下面分别介绍文字的滚动和窗口动画显示效果的实现方法。在此之间先新建一个应用程序,然后新建2个窗口,分别命名为w_flash1、w_flash2,在w_flash1、w_flash2中分别插入一个静态文本控件,文本内容(text)分别为“文字的滚动”和“动画显示窗口”。

2.1 滚动的文字

(1)在应用程序对象里编写启动代码:

Open(w_flash1)

(2)在w_flash1的open( )事件里编写:

St_2.text =st_2.text+space(int(w_about.width/20))

Timer(0.05) //每隔0.05秒触发timer( )事件

(3)在w_flash1的timer( )事件里编写:

String ls_help,ls_banner

Long len

Ls_banner=st_2.text

Len =len(st_2.text)

Ls_help=right(ls_banner,len-2)+left(ls_banner,2)

St_2.text=ls_help

2.2窗口的动画显示

(1)在应用程序对象里编写启动代码:

Open(w_flash2)

(2)在窗口w_flash2的open( )事件里面编写如下代码:

Timer(1)//表示每隔1秒触发timer( )事件

(3)在窗口的设计视图区选择“Declare Instance variables”选项卡,在其中声明一个实例变量:

Integer ii_i=1

(4)在主窗口W_flash的 timer( )事件里编写如下代码,以完成窗口动画显示的功能(以下只给出让窗口向下、向右下、向右移动的代码,如果想让其向上、向左、向左上移动,只需修改稍微修改下代码即可)。

Integer li_num

If ii_i=1 then

For li_num=1 to 1540 step 1

W_flash.move(1,li_num) //Y坐标递增,图形向下移

Next

Ii_i++

W_flash.move(1,1)

W_flash.setredraw(true)

Return

End if

If ii_i=2 then

For li_num=1 to 1540step 1

W_flash.move(li_num,li_num)//X、Y坐标递增,图形向右下下移

Next

Ii_i++

W_flash.move(1,1)

W_flash.setredraw(true)

Return

End if

If ii_i=3 then

For li_num=1 to 1540 step 1

W_flash.move(li_num,1)//X坐标递增,图形向右移

Next

Ii_i++

W_flash.move(1,1)

W_flash.setredraw(true)

Return

End if

3.结束语

PowerBuilder是一款优秀的企业级数据库前端应用开发工具,是当前最流行的数据库前端开发工具之一。在PB中,利用Timer()能够实现动画效果,从而使得设计出来的相关软件增加不一样的效果,使得软件更加生动。本文在介绍了PowerBuilder的常用事件、常用函数,并结合实例详细的介绍了在PowerBuilder中实现动画效果的方法。

【参考文献】

[1]陈永强,李茜.SQL Server 2005+PowerBuilder11高级开发指南.清华大学出版社.

[2]樊金生,张翠肖.PowerBuilder 10.5实用教程.科学出版社.

[3]王羡欠,周燕玲.PowerBuilder 9与Flash的交互编程.计算机与现代化,2009.

猜你喜欢

程序开发字符串控件
使用“填表单”微信小程序 统计信息很方便
浅析大学生在兼职小程序开发中遇到的问题
基于.net的用户定义验证控件的应用分析
一种基于PowerBuilder环境字符串相似度算法
VBA在Excel中的应用一例
SQL server 2008中的常见的字符串处理函数
倍增法之后缀数组解决重复子串的问题
利用OpenGL技术实现网格波动效果界面
最简单的排序算法(续)
利用VF6.0的Timer控件实现动画效果