Hi,
This is a good question. In this case the error is telling you that some widget
requires a '-label' parameter and did not get it. (The prime example of this is
the command method of a Menubutton widget, which if left without a label will
produce this exact error.)
Normally use Tk::ErrorDialog will produce a stack, with useful information, but
neither that nor a custom Tk::Error sub will produce useful information in the
example that I gave.
sub Tk::Error
{
my ($widget, $error, @locations) = @_;
print "Widget:\n\t$widget\n";
print "Error:\n\t$error\n";
print "Locations:\n";
map { print "\t$_\n" } @locations;
}
If you or anyone else comes upon a way to trap this kind of (rare) error that occurs outside
of Tk's built-in error mechanism, I'd like to see it. In my experience this
kind of thing is how pTk earns its undeserved bad reputation.
Update: belg4mit snuck in a response a bit before me {g}, but I wanted to say that I
have version 3.078 of Widget.pm as well and it does indeed produce this exact error at that
line number if perform the action I describe above with the command method of a Menubutton
widget. That is why this error appears to happen outside of Tk's Error handling mechanism.
Good luck,
{NULE}
--
http://www.nule.org
|