mihirjha has asked for the wisdom of the Perl Monks concerning the following question:

Hi All, I want to trap/suppress Perl Tk:error. Please let me know , how can I do that. Thanks and regards, Mihir

Replies are listed 'Best First'.
Re: suppress Perl Tk:error
by tachyon-II (Chaplain) on Nov 30, 2007 at 05:50 UTC

    Have a look at the code for Tk::Carp posted on PM. This shows you how to trap errors and respond any way you see fit.

Re: suppress Perl Tk:error
by zentara (Cardinal) on Nov 30, 2007 at 13:53 UTC
    Read "perldoc Tk::Error". You can either "require Tk::ErrorDialog" to redirect the error from stdout to a popup; OR you can define the sub Tk::Error to do what you want. Just return from sub Tk::Error to suppress any output.
    #!/usr/bin/perl -w use strict; use Tk; #require Tk::ErrorDialog; my $mw = new MainWindow(); $mw->Button(-text=>'test',-command =>\&testit)->pack(); MainLoop; sub testit{ # division by zero error my $y = 1; my $x = 0; my $z = $y/$x; } sub Tk::Error{ my ($widget,$error,@locations) = @_; # print "$widget,$error,@locations\n"; return; }

    I'm not really a human, but I play one on earth. Cogito ergo sum a bum