51CTO技术论坛 » PowerBuilder » 在PB中用Flash制作Splash封面        上一帖     下一帖    查看完整版本

页: [1]

qitutujia2006-8-29 03:41
在PB中用Flash制作Splash封面

我们常用的软件如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下运行通过。

关键词: PB       FLASH       答案       as       DLL       

相关文章:
我的CPU100%了 怎么办
PowerBuilder创建分布式程序
用Server-u构建安全的FTP站点
网络基础试题100例(附答案)
看我的题库SE不过也难--交换部分

查看完整版本: 在PB中用Flash制作Splash封面


Powered by 51CTO.COM