Erreur X-Windows sur Tk::Drop
Bonjour,
J'utilise Tk (version 804.033) avec PERL (version 5.18.2) sur Linux Mint.
J'ai une erreur lorsque j'exécute le code suivant qui fonctionne parfaitement quand je l'exécute sous Windows 7.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| #!/usr/bin/perl
use strict;
use Tk;
use Tk::DropSite;
my $mw = new MainWindow(-width => 500, -height => 300);
my $label = $mw->Label(-text => "Drop on me", -anchor => 'center')->pack->place(-relwidth => 1.0, -relheight => 1.0);
$label->DropSite(-droptypes => [$^O eq 'MSWin32' ? 'Win32' : 'XDND'], -dropcommand => [\&dropFile, $label]);
MainLoop;
sub dropFile {
my ($widget, $selection) = @_;
my $filename = $widget->SelectionGet(
-selection => $selection,
'STRING'
);
print "DROP [$filename]\n";
} |
Sous Linux, l'erreur est la suivante et l'application se ferme :
Citation:
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 25 (X_SendEvent)
Resource id in failed request: 0x2fd00fd
Serial number of failed request: 164
Current serial number in output stream: 165
Les valeurs numériques changent à chaque exécution.
Un utilisateur de Linux pourrait-il essayer ce code et me dire si il fonctionne sur sa distrib ?
Et sinon, quelle peut être mon erreur d'utilisation de Tk ?
Merci d'avance.