在PB中用Flash制作Splash封面

转载 2012年03月30日 21:43:25

在PB中用Flash制作Splash封面

(加入日期:2002-3-9)

保存文章至硬盘】【打印文章】【字体:

分享到: 0
长江委汉江局职校 叶林利

我们常用的软件如Word,Excel,PhotoShop等在运行时都有一个Splash封面,该封面既显示软件的名称、版本、开发人员以及使用者等信息,又可以在后台初始化数据库和软件需要调用的文件。但这些Splash封面文件通常只包含静态的图片和文本对象,常常显得比较单调。我们是否可以将Splash封面文件做成动态的呢?答案当然是可以的。笔者在用PowerBuilder 8.0为单位开发工资软件时通过调用Flash文件制作出新颖、漂亮的Spalsh封面。以下详细介绍制作过程。
1.先将Swflash.Ocx文件复制到Windows\system32(若为Windows98系统则为System目录)下,然后单击开始,运行,在运行框中输入Regsvr32 c:\windows\system32\swflash.ocx,单击确定即可注册swflash.ocx控件 。


2.在Flash中制作一大小为550px×450px的Flash文件splash.fla,并输出为splash.swf,保存在开发目录下。
3.在PowerBuilder中新建一应用Splash.pbl,在应用的Open事件中添加如下代码:Open(w_splash) //打开Splash封面窗口。
4.在Powerbuilder中新建一函数wf_get_Curr_dir,Access为Public,Return Type 为String,函数名为wf_get_Curr_dir,在该函数中添加如下代码
//获得当前应用所在的目录
string ls_Buffer

ls_Buffer=Space(255)

IF GetCurrentDirectoryA(255,ls_Buffer)=0 THEN SetNull(ls_Buffer)

RETURN ls_Buffer

代码中的GetCurrentDirectoryA为WindowsAPI函数,在应用的Globa External Functions中声明:
Function ulong GetCurrentDirectoryA(ulong nBufferLength,ref string lpBuffer) Library "kernel32.dll"
5.新建一窗口w_Splash,其属性如下表:
窗口/控件名 值
WindowType Popup!
WindowState Normal!
Visible True
Enabled True
ClientEdge True
Center True
Width 1847
Height 1092
将窗口的Titlebar、ControlMenu、MaxBox、MinBox、PaletteWindow、RightToLeft、Border等全部取消选择。
6.在窗口中插入一Ole控件,打开如下对话框:


单击Insert Control页面


在Control Type下的列表框中选择Shockwave Flash Object,然后单击OK按钮即可在窗口中插入flash控件,其属性设置如下表:
窗口/控件名 值
Name Ole_1
Visible True
Enabled True
BorderStyle StyleLowered!
其它属性保持不变。
在窗口的Open事件、Close事件、Timer事件中分别加入如下代码:
Open事件:
String ls_path,ls_swffile  
ls_path=wf_get_curr_dir() //获得当前应用的路径
ls_swffile=ls_path+'\splash.swf'
ole_1.move(0,0)  
ole_1.width=this.workspacewidth( )
ole_1.height=this.workspaceheight( )
ole_1.object.movie(ls_swffile)
ole_1.object.play()
timer(5,this)

Close事件:
timer(0,this)
//open(w_logon) //打开登陆窗口

Timer事件
Close(this)

至此本应用的Splash封面窗口建立完毕,单击运行按钮即可运行。

以上程序在Windows98/2000/xp 和Powerbuilder 7.0/8.0下运行通过。

最老程序员创业开发实训8---IOS---在Swift中用定时任务显示Splash页面

在上一节中,我们用Swift实现了Splash页面的显示,但是仅仅显示Splash页面是不够的,我们需要显示Splash页面2秒,然后跳转到下一个页面,因此需要实现定时任务的功能。在Android中,...
  • Yt7589
  • Yt7589
  • 2015年09月10日 14:18
  • 2138

PB中用数据窗口实现画图

  • 2011年04月26日 22:06
  • 2KB
  • 下载

在PB中用Enter键实现跳转的几种方法

在使用PowerBuilder开发的应用软件时,各控件及数据窗口列之间的转换基本上是使用Tab键或鼠标来实现的。而对于一些长期使用基于字符终端的用户来说,特别是对频繁、大量处理数据的用户来说,每输完一...

在PB中用OLE存取blob类型数据

前言:在数据库的开发过程中,经常需要在数据库中存储一些备注信息,而这些备注信息的内容一般较大,格式多样—如有可能是语音文件、视频文件、图片文件、文本文件等,怎样在PB中实现这些格式不同的备注文件的存取...
  • linybo
  • linybo
  • 2014年04月13日 21:40
  • 970

PB中用DataWindow.Update更新数据。

大多数情况下,您的应用程序将在网络环境下运行。有可能会有多个人同时使用一个程序。在这种情况下使用数据窗口应注意并发控制问题。   数据窗口的并发性控制可以用"rows"菜单的"Update  Pro...

在PB中用OLE存取blob类型数据

3、OLE存储   3.1 OLE存储(OLEstorage)的概念   OLE存储(OLEstorage)是OLE数据的一个仓库,存储就象磁盘上的目录结构,它可以是一个OLE对象,也可以包含...
  • tlammon
  • tlammon
  • 2015年01月18日 22:07
  • 420

Flash唱片封面图片滚动效果

  • 2010年05月15日 12:36
  • 102KB
  • 下载

从Web站点读取Flash动画演播的PB6.5编程

从Web站点读取Flash动画演播的PB6.5编程 (加入日期:2002-4-3) 【保存文章至硬盘】【打印文章】【字体:大中 小】 分享到: 0 ---- Flash动画不仅包含动...

web开发ASP.NET中用FLASH控件

  • 2008年11月03日 17:44
  • 16KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在PB中用Flash制作Splash封面
举报原因:
原因补充:

(最多只允许输入30个字)