PowerBuilder动态窗口的创建

版权声明: https://blog.csdn.net/ClearLoveQ/article/details/81542078

1.在View/Variable/Gobal External Function中    声明AnimateWindow

function boolean AnimateWindow ( long hwnd, long dwtime, long dwflags ) library "user32" 

2.在instance中定义常量

constant long AW_HOR_POSITIVE = 1 
constant long AW_HOR_NEGATIVE = 2 
constant long AW_VER_POSITIVE = 4 
constant long AW_VER_NEGATIVE = 8 
constant long AW_CENTER = 16 
constant long AW_HIDE = 65526 
constant long AW_ACTIVATE  = 131072 
constant long AW_SLIDE = 262144 
constant long AW_BLEND = 524288 

3.在窗口的open事件中

long ll_handle  
ll_handle = Handle ( This ) 
Randomize ( 0 ) 
Choose Case rand ( 6 ) 
Case 1 
AnimateWindow(ll_handle,1000,AW_SLIDE+AW_VER_POSITIVE+AW_ACTIVATE) 
Case 2 
AnimateWindow(ll_handle,1000,AW_SLIDE+AW_VER_NEGATIVE+AW_ACTIVATE) 
Case 3 
AnimateWindow(ll_handle,1000,AW_SLIDE+AW_HOR_POSITIVE+AW_ACTIVATE) 
Case 4 
AnimateWindow(ll_handle,1000,AW_SLIDE+AW_HOR_NEGATIVE+AW_ACTIVATE) 
Case 6,5 
AnimateWindow(ll_handle,1000,AW_SLIDE+AW_CENTER+AW_ACTIVATE) 
End Choose 

4.在close事件中

//动态窗口
long ll_handle  
ll_handle = Handle(This) 
AnimateWindow(ll_handle,300,AW_SLIDE+AW_HIDE+AW_CENTER) 

5.参数介绍:

【说明】
该函数能在显示与隐藏窗口时能产生特殊的效果。有两种类型的动画效果:滚动动画和滑动动画。

【返回值】
 如果函数成功,返回值为非零;如果函数失败,返回值为零。在下列情况下函数将失败:
 窗口使用了窗口边界;窗口已经可见仍要显示窗口;窗口已经隐藏仍要隐藏窗口。若想获得更多错误信息,请调用GetLastError函数。

【其它】
  可以将AW_HOR_POSITIVE或AW_HOR_NEGTVE与AW_VER_POSITVE或AW_VER_NEGATIVE组合来激活一个窗口。
  可能需要在该窗口的窗口过程和它的子窗口的窗口过程中处理WM_PRINT或WM_PRINTCLIENT消息。对话框,控制,及共用控制已处理WM_PRINTCLIENT消息,缺省窗口过程也已处理WM_PRINT消息

【参数表】
    hWnd:指定产生动画的窗口的句柄。
    dwTime:指明动画持续的时间(以微秒计),完成一个动画的标准时间为200微秒。
    dwFlags:指定动画类型。这个参数可以是一个或多个下列标志的组合。标志描述:
    AW_SLIDE:使用滑动类型。缺省则为滚动动画类型。当使用AW_CENTER标志时,这个标志就被忽略。
    AW_ACTIVE:激活窗口。在使用了AW_HIDE标志后不要使用这个标志。
    AW_BLEND:使用淡出效果。只有当hWnd为顶层窗口的时候才可以使用此标志。
    AW_HIDE:隐藏窗口,缺省则显示窗口。
    AW_CENTER:若使用了AW_HIDE标志,则使窗口向内重叠;若未使用AW_HIDE标志,则使窗口向外扩展。
    AW_HOR_POSITIVE:自左向右显示窗口。该标志可以在滚动动画和滑动动画中使用。当使用AW_CENTER标志时,该标志将被忽略。
    AW_VER_POSITIVE:自顶向下显示窗口。该标志可以在滚动动画和滑动动画中使用。当使用AW_CENTER标志时,该标志将被忽略。
    AW_VER_NEGATIVE:自下向上显示窗口。该标志可以在滚动动画和滑动动画中使用。当使用AW_CENTER标志时,该标志将被忽略

 

展开阅读全文

没有更多推荐了,返回首页