Как перехватить событие, когда пользователь нажимает кнопку "Закрыть" в окне верхнего уровня?

Когда пользователь нажимает системную кнопку закрытия в окне верхнего уровня, мне нужно освободить ресурсы.

Вопрос: как мне перехватить это событие, чтобы я мог вызвать некоторый мой собственный код?

Я просмотрел документы, но не могу найти ничего о разрушении окон верхнего уровня.

1 ответ

Решение
use warnings;
use strict;
use Tkx;

my $mw = Tkx::widget->new('.');
$mw->g_wm_protocol('WM_DELETE_WINDOW' => \&cleanUp);

Tkx::MainLoop();

sub cleanUp
{
   print "Cleaning things up\n";
   exit;
}
Другие вопросы по тегам