http://www.perlmonks.org?node_id=55449

alftheo has asked for the wisdom of the Perl Monks concerning the following question: (gui programming)

How do I minimize an application's window? (Win32)

Originally posted as a Categorized Question.

  • Comment on How do I minimize an application's window? (Win32)

Replies are listed 'Best First'.
Re: How do I minimize an application's window? (Win32)
by alftheo (Scribe) on Feb 12, 2001 at 12:39 UTC

    Win32::GUI has a function to minimize a window. The tricky part is finding the window you want to minimize; it might not be the only window in the application.

    use Win32::GUI; my $title_part = shift; my $class_part = shift; $title_part or die "Supply title substring\n"; $class_part ||= ''; my $perlwindow = GUI::GetPerlWindow(); for ( my $window = GUI::GetWindow( GUI::GetDesktopWindow(), GW_CHILD ); $window; $window = GUI::GetWindow( $window, GW_HWNDNEXT ) ) { next if $window == $perlwindow; my $title = GUI::Text($window); my $class = GUI::GetClassName($window); if ( $title =~ /$title_part/ and $class =~ /$class_part/ ) { warn "Minimizing $title: $class\n"; GUI::Minimize($window); } }