From: Robert M. <rob...@us...> - 2008-01-27 13:59:49
|
On 12/12/2007, a98...@gm... <a98...@gm...> wrote: > hi rob, > thanks for your support. > > I've created a small working example of my script. Sorry I took so long to get round to looking at this. I cut your script down to be *short* and something that I could run without having to install lots of other modules. My script attached below. I see the problem. It is only a problem with 'blend' - 'slide' and 'center' work fine. I don't have time to work out exactly why this is (but suspect it's a non-trivial interaction with the way AnimateWindow() works and way DefWindowProc handles the WM_PRINT message). I've included a simple work-around in my script - uncomment the extra line in my animate() function. How that's useful. Rob. #!perl.exe -w use strict; use warnings; use Win32::GUI 1.05 qw( CW_USEDEFAULT ); my $mw = Win32::GUI::Window->new( -title => "Configuration", -left => CW_USEDEFAULT, -size => [ 600, 450 ], ); $mw->AddTextfield( -prompt => [ "Prompt: " , 50 ], -text => "Default Setting", -pos => [10,10], -size => [150, 20], ); #$mw->Show(); animate($mw); Win32::GUI::Dialog(); $mw->Hide(); exit(0); sub animate { my ($self) = @_; $self->Animate( -show => 1, -activate => 1, -animation => "blend", -direction => "rl", -time => 400, ); # Add next line to fix problem with 'blend' mode #$self->InvalidateRect(0); return; } __END__ |