Thread Tk::Error: Usage $widget->destroy(...) - Ursache? (5 answers)
Opened by GoodFella at 2007-03-01 15:28

GoodFella
 2007-03-01 15:28
#74740 #74740
User since
2007-01-09
192 Artikel
BenutzerIn
[default_avatar]
Hi, mache zur Zeit mehrere Sachen gleichzeitig, deswegen meine vielen Posts heute.

Ich habe ein grosses Script, welches folgenden Fehler produziert:
Quote
destroy (1):
0 0x2b9589c PV f=00080004 {}(5)(1)
SV = PV(0x2b833f8) at 0x2b9589c
REFCNT = 1
FLAGS = (ROK)
RV = 0x2b91e64
PV = 0x2b91e64 ""
CUR = 0
LEN = 0
bzw. in mein Errorlog wird geschrieben:
Quote
1.03.2007 14:18:50 :
--------->
Tk::Error: Usage $widget->destroy(...) at mmc.pl line 2001.
Tk callback for .toplevel.toplevel.toplevel
Tk callback for .toplevel.toplevel.toplevel.jbrowseentry.frame
Tk callback for .toplevel.toplevel.toplevel.jbrowseentry.frame.labentry
Tk callback for .toplevel.toplevel.toplevel.jbrowseentry.toplevel
Tk callback for .toplevel.toplevel.toplevel.jbrowseentry.toplevel.frame
Tk callback for .toplevel.toplevel.toplevel.jbrowseentry.toplevel.frame.ysbslice
Tk callback for .toplevel.toplevel.toplevel.jbrowseentry.toplevel.frame.ysbslice.corner
Tk callback for .toplevel.toplevel.toplevel.jbrowseentry
main::update_sort_widgets at mmc.pl line 2001
main::get_sort_params at mmc.pl line 2035
main::process at mmc.pl line 2149
main::__ANON__ at mmc.pl line 1510
Tk callback for .toplevel.button2
Tk::__ANON__ at C:/Perl/lib/Tk.pm line 252
Tk::Button::butUp at C:/Perl/lib/Tk/Button.pm line 111
<ButtonRelease-1>
(command bound to event)

<---------


Zeile 2001 und Umgebung:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
sub update_sort_widgets
 {
  my ($parent, $count) = @_;
  my @dirs = keys(%sort_dirs);  
  for(my $i=0; $i<=$#be_sort_field; $i++) { $be_sort_field[$i]->destroy() if ($be_sort_field[$i]); } @be_sort_field = ();
  for(my $i=0; $i<=$#be_sort_dir; $i++)   { $be_sort_dir[$i]->destroy() if ($be_sort_dir[$i]); }     @be_sort_dir = ();
  for(my $i=0; $i<=$#lbl_sort_nr; $i++)   { $lbl_sort_nr[$i]->destroy() if ($lbl_sort_nr[$i]); }     @lbl_sort_nr = ();

...

@be_sort_field / @be_sort_dir / @lbl_sort_dir sind per my definierte Globale Vars, die Widgets enthalten.
(be für browseentry, lbl für Label)
Ich kann mir nicht vorstellen, wie die Fehlermeldung zustande kommt, habe per google zwar gefunden, dass in einem ähnlichen Fall ein mainwindow mehrfach erzeugt wurde (oder so ähnlich), dies trifft aber nicht auf mein Problem zu.
Weiss jemand, woran es liegt?

View full thread Tk::Error: Usage $widget->destroy(...) - Ursache?