Tkx с перетаскиванием перестает работать при добавлении меню
Я пытаюсь создать маленький Tkx
приложение.
Он должен обеспечить перетаскивание файла и меню.
Пожалуйста, посмотрите на мой тестовый код ниже:
use strict;
use Tkx;
Tkx::package_require('tkdnd');
my $textVar = undef;
my $mw = Tkx::widget->new(".");
my $menu = $mw->new_menu;
# $mw->configure( -menu => $menu );
$$textVar = "drag here";
my $entry = $mw->new_entry( -textvariable => $textVar );
$entry->g_pack( qw '-fill both -expand true' );
Tkx::tkdnd__drop___target_register( $entry, '*' );
Tkx::bind( $entry, '<<Drop:DND_Files>>', [
sub { AcceptDrop(shift); },
Tkx::Ev("%D")
] );
Tkx::MainLoop();
sub AcceptDrop {
$$textVar = shift;
print "in AcceptDrop with '$$textVar'\n";
}
Если вы выполните его, вы сможете перетащить любой файл в "запись"
Но как только я включил
$mw->configure( -menu => $menu );
Drag &drop перестает работать
Пожалуйста, кто-нибудь может объяснить, почему?