It does not work on Win NT !?
Does it?
 
  Steve Lihn 

-----Original Message-----
From: Luigino Masarati [mailto:[EMAIL PROTECTED]
Sent: Tuesday, October 08, 2002 12:12 PM
To: perl-win32-gui-users@lists.sourceforge.net
Subject: [perl-win32-gui-users] Animated windows [working demo]


This is a working demo for Animated windows
 
#-------------------------------------
use Win32;
use Win32::API;
use Win32::GUI;
 
use constant AW_HOR_POSITIVE => 0x00000001;
use constant AW_HOR_NEGATIVE => 0x00000002;
use constant AW_VER_POSITIVE => 0x00000004;
use constant AW_VER_NEGATIVE => 0x00000008;
use constant AW_CENTER       => 0x00000010;
use constant AW_HIDE         => 0x00010000;
use constant AW_ACTIVATE     => 0x00020000;
use constant AW_SLIDE        => 0x00040000;
use constant AW_BLEND        => 0x00080000;
 
# BOOL AnimateWindow(
# HWND hwnd,
# DWORD dwTime,
# DWORD dwFlags
# );
my $AnimateWindow = new Win32::API("user32", "AnimateWindow", [ 'N', 'N',
'N' ], 'N') or $reg{'UI'}{'Fading'} = 0;
 
# ... here create your window object ($winObj) as ususal...
my $winObj = Win32::GUI::Window->new( -name => 'Main', -width  => 200,
-height => 200, -left => 200, -top => 200 );
 
# add a label to your window
$winObj->AddLabel(-text => "Hello, world", -name => 'label');
 
# set animation duration in ms (usually 200ms)
my $msec = 300;
 
# FADE IN
# use this command in place of $objWin->Show()
$AnimateWindow->Call($winObj->{-handle}, $msec, AW_ACTIVATE | AW_BLEND );
 
# activate dialog processing
Win32::GUI::Dialog();
 
sub Main_Terminate
{
 # FADE OUT
 # use this command in place of $objWin->Hide() for example in
winObj_Terminate()
 $AnimateWindow->Call($winObj->{-handle}, $msec, AW_HIDE | AW_BLEND );
 
 return(-1);
}
 
# Some alternatives follows...
 
# APPEAR from LEFT-TOP
# use this command in place of $objWin->Show()
# $AnimateWindow->Call($winObj->{-handle}, $msec, AW_ACTIVATE | AW_SLIDE |
AW_HOR_POSITIVE | AW_VER_POSITIVE );
 
# DISAPPEAR from RIGHT-BOTTOM
# use this command in place of $objWin->Hide() for example in
winObj_Terminate()
# $AnimateWindow->Call($winObj->{-handle}, $msec, AW_HIDE | AW_SLIDE |
AW_HOR_NEGATIVE | AW_VER_NEGATIVE );
 
# GROW from CENTER
# use this command in place of $objWin->Show()
# $AnimateWindow->Call($winObj->{-handle}, $msec, AW_ACTIVATE | AW_CENTER );
 
# SHRINK to CENTER
# use this command in place of $objWin->Hide() for example in
winObj_Terminate()
# $AnimateWindow->Call($winObj->{-handle}, $msec, AW_HIDE | AW_CENTER );
 
 


------------------------------------------------------------------------------
Notice: This e-mail message, together with any attachments, contains 
information of Merck & Co., Inc. (Whitehouse Station, New Jersey, USA) that may 
be confidential, proprietary copyrighted and/or legally privileged, and is 
intended solely for the use of the individual or entity named on this message.  
If you are not the intended recipient, and have received this message in error, 
please immediately return this by e-mail and then delete it.

==============================================================================

Reply via email to