2013-06-03 72 views
0

我想在顶层窗口中打开一个窗口,直到该窗口打开,我应该无法移回到以前打开的任何窗口。这里是我的代码:如何在TopLevel窗口上打开并抓取窗口

$mw = MainWindow->new; # This will make my main Window 
$mw->title("Main Window"); 
$menubar = $mw->Menu; 
$mw->configure(-menu => $menubar); 

$sub_window=$menubar->cascade(-label => 'Menu',-tearoff => 0); 
$sub_window->command(-label => 'Sub_Menu_Window',-command=>\&Open_window); # I've placed a sub menu which will open new window on main window. 

sub Open_window 
{ 
$mw=shift; 
$new_wind =$mw->Toplevel(-title => "New Sub Window"); 
$new_wind->grab; #here i have opened a new window and I won't be able to go back to my main window unless I will close this because of grab. 

$new_wind ->Button(-text=>"another_window",-command =>\&AnotherWindow) ->pack(); 

    sub AnotherWindow 
    { 
        # What Code Should I enter here to open a new window when I press button "another_window". ALso I want that until this window is closed I should not be able to work with other window previously opened.(Same as grab used with toplevel window) 
    } 

} 
MainLoop; 

我想使这个AnotherWindow一样喜欢顶层窗口,所以,当我按下按钮,直到窗口将保持打开状态,我不能与任何其他打开的窗口工作。

回答

0

我们可以这样做:

sub AnotherWindow 
{ 
    $window_over_top_level =$new_wind->Toplevel(-title => "Window Over Top Level With Grab"); 
$window_over_top_level->geometry("270x380"); 
$window_over_top_level->grab; 
} 
相关问题