use Tk; require Tk::StayOnTop; require Tk::MatchEntry; $desc = ""; @opts = ("test","one","two","three"); $window = MainWindow->new; $window->Button(-text => "Button")->grid(-row=>1,-column=>0); $Entry = $window->MatchEntry(-textvariable => \$desc, -listcmd=>\&moveList)->grid(-row=>0,-column=>0); $Entry->choices(\@opts); $window->after(1000,sub {$window->stayOnTop()}); $window->bind('', \&focusOut); MainLoop; sub moveList { if($lowered == 0) { $window->dontStayOnTop(); $lowered = 1; } } sub focusOut { if($lowered == 1) { $window->stayOnTop(); $lowered = 0; } }