use Tk; $mw = new MainWindow; $main = $mw -> Scrolled("Canvas",-scrollbars=>'e')-> pack(-side => 'left', -fill => 'both', -expand => 1); $canvas = $main->Subwidget("canvas"); Tk::bind($canvas, '', [ sub {$f->yview('scroll',-($_[1] / 120) * 3,'units')}, Ev('D')]); $see = "\nHaaa, See that and die!"; $info = $main->createText(180, 15, -text => "$see", -font => 'Arial 11 bold' , -fill => red); $main->configure(-scrollregion => [0,0,2000 , 2000]); $canvas_cube = $main->Canvas(-width => 15, -height => 15, -background => 'green'); $main ->createWindow(75,75, -window => $canvas_cube); $canvas->focus; MainLoop;