有没有办法让Perl/Tk窗口的关闭('X')按钮被禁用? 我知道如何忽略它使用here描述的技术点击它,但我宁愿让它被禁用。如何禁用Windows上的Perl/Tk窗口关闭('X')按钮
我在Windows上使用Perl/Tk。
感谢,
splintor
有没有办法让Perl/Tk窗口的关闭('X')按钮被禁用? 我知道如何忽略它使用here描述的技术点击它,但我宁愿让它被禁用。如何禁用Windows上的Perl/Tk窗口关闭('X')按钮
我在Windows上使用Perl/Tk。
感谢,
splintor
我有一个应用程序,我写的,我想知道同样的事情,我不disableit,但我有一个回调到子程序,还是只是因为return;
$Mw->protocol('WM_DELETE_WINDOW',sub{return;});
根据the Perl Monks,它看起来像在Windows以下工作:
#!/usr/bin/perl
use warnings;
use strict;
use Tk;
my $window = new MainWindow;
$window ->title("Close test");
$window ->geometry("400x250");
#prevents window from closing
$window->protocol('WM_DELETE_WINDOW' => sub {
print "Do stuff before exiting\n";
exit;
});
MainLoop;
在上面的代码,你拦截发送的信号时,当按下按钮,用户按下“X”,然后可以编写自己的子程序执行。
如果你想关闭的关闭图标,设置sub
空(有效地告诉它“按下时什么都不做”):'WM_DELETE_WINDOW' => sub {}
如果不设法真正禁用关闭按钮(我的意思是将它变灰,甚至将其从窗饰中移除),它可能是最直观的图标化窗口而不是关闭窗口。这就是我所做的。
$window->protocol('WM_DELETE_WINDOW', sub { $window->iconify(); });
谢谢,但我在Windows上。 – splintor 2009-02-05 21:05:07