在PB应用中实现声音与动画
在设计应用程序过程中,恰当地应用电脑声音与动画技术,可以为用户提供更加直观、友好、引人注目的操作界面。下面笔者介绍一下在PowerBuild 应用中实现声音与动画的一种简便方法:
- 作为举例,创建一个MDI风格的窗口w_audani。在这个窗口上放置一个含声音、动画两个带图标的菜单项的菜单m_audani,一个图象框p_1。整个窗口的外观如下:
- 制备声音和图象文件。本例中选用了一个adu.wav的声音文件和四个ani1.bmp、ani2.bmp、ani3.bmp、ani4.bmp 用于动画素材的分离图象文件。
- 定义程序编制中要用到的变量:
(1)定义一个整型实例变量,用作图象计数
integerpicturenub
(2)定义一个外部函数,使在PowerBuild编程中可以调用Windows
32-bitAPI声音播放函数
functionbooleansndplaysounda(stringsoundname,uintflags)&library"winmm.dll"
(1)在窗口的打开(Open)事件下输入程序:
//声音菜单项置选中属性m_audani.m_1.m_aud.checked=true//动画菜单项置选中属性m_audani.m_1.m_ani.checked=true//图象计数器置初值picturenub=1//定义每隔半秒钟触发一次窗口的timer事件timer(0.5,this)
IFm_audani.m_1.m_aud.checked=trueTHENsndplaysounda("aud.wav",3)ENDIF//如果动画菜单项被选中,则播放动画IFm_audani.m_1.m_ani.checked=trueTHENCHOOSECASEpicturenub//当图象计数为1时,播放第1张图象CASE1p_1.picturename="ani1.bmp"//当图象计数为2时,播放第2张图象CASE2p_1.picturename="ani2.bmp"//当图象计数为3时,播放第3张图象CASE3p_1.picturename="ani3.bmp"//当图象计数为4时,播放第4张图象CASE4p_1.picturename="ani4.bmp"//恢复图象计数picturenub=0ENDCHOOSE//图象计数增1picturenub++ENDIF
(1)在菜单项声音(m_aud)的单击(Clicked)事件下输入程序:
//使该菜单项的选中? 反转起到开关的作用,即原来为选中的变为不选中,未选中的则现在变成选中
this.checked=notthis.checked
(2)在菜单项动画(m_ani)的单击(Clicked)事件下输入程序: //同样,使该菜单项的选中属性反转this.checked=notthis.checked
(1)启动程序后,自动打开以上图示的窗口;
(2)窗口计时器按每半秒钟触发一次事件处理程序,播放声音和图象文件,周而复始以产生动画效果;
(3)单击声音或动画菜单项(工具图标),可以控制声音或动画是否播放。
- 最新文章
- 在PB打印中实现人民币大写[01-04]
- 使用PB 7.0 开发Web应用[01-04]
- 采用Sybase、PowerBuilder、Notes构建B..[01-04]
- 如何在PB中启动控制面板及其控制项[01-04]
- PowerBuilder中实现数据窗口打印预览通用方法[01-04]
- PowerBuilder中的几个注册表函数的介绍[01-04]
- 相关文章
- 使用PB 7.0 开发Web应用[01-04]
- 采用Sybase、PowerBuilder、Notes构建B..[01-04]
- PowerBuilder7.0在Internet中的应用[01-04]
- 让应用程序禁止Windows屏幕保护[01-03]
- C++Builder开发Web应用程序[01-03]
- 用C++ Builder开发多层数据库应用程序[01-03]
