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 перестает работать

Пожалуйста, кто-нибудь может объяснить, почему?

0 ответов

Другие вопросы по тегам