#!/usr/bin/perl use Tk; my $mw = new MainWindow; my $canvas = $mw->Canvas(-bg=>'white')->pack(-expand=>1, -fill => 'both'); my $currentSize = $mw->reqwidth . "x" . $mw->reqheight; $mw->bind( '', [ \&OnResize, \$currentSize ] ); MainLoop; sub OnResize { my ( $mw, $oldSize ) = @_; my $newSize = $mw->width . "x" . $mw->height; if ( $$oldSize ne $newSize ) { ## Resize has occurred do something: printf( "Resize happened - old size: %s, new size: %s\n", $$oldSize, $newSize ); ## set the old size to the new size $$oldSize = $newSize; } }