in reply to How to disable the buttons

You change the state of the button as described in the Tk::Button documentation.

-- Ken

Replies are listed 'Best First'.
Re^2: How to disable the buttons
by vr786 (Sexton) on Nov 04, 2010 at 05:11 UTC

    Can you please give me the example , i tried configuring buttons but i didn't get it....

      Unless you show what you've tried, it's impossible to explain where you might be going wrong.

      Here's an example direct from the source code of Tk::Button: $w->configure(-state => 'active');

      Here's one from the source code of Tk::Menubutton: $w->configure('-state','normal')

      As you can see, there's nothing special here.

      -- Ken

        Thanks for giving replay, here is my code , in that two option menus , one button is there , what i want is , if the first optionmenu selected the second one get activated , if the second one get selected the exit button should get activated till then optionmenu2,exit button are disabled state how i do it please help me..........

        #!/usr/bin/perl -w use Tk; my $mw = MainWindow->new(); $mw-> geometry("400x100"); $mw -> configure(-background => "cyan", -foreground => "lightblue" ); my $opt = "0"; my $opt1 = "0"; my ($var, $tvar); $opt = $mw->Optionmenu( -background => "lightgreen", -options => [[jan=>1], [feb=>2], [mar=>3], [apr=>4]], -command => sub { print "got: ", shift, "\n" }, -variable => \$var, -textvariable => \$tvar )->pack; $opt->configure(-state); #$opt->configure(-state=>'disabled'); $opt->addOptions([may=>5],[jun=>6],[jul=>7],[aug=>8]); my $exit_but = $mw->Button(-text=>'Exit', -command=>sub{$mw->destroy}) +->pack(-side=>"bottom"); $exit_but->configure(-state); $exit_but->configure(-state => 'disabled'); $opt1 = $mw->Optionmenu( -background => "lightgreen", -options => [qw(test1 test2 test3)], -command => \&do_some, -variable => \$var, )->pack; $opt1->configure(-state); MainLoop; sub do_some { if($opt ) { $exit_but -> configure(-state => 'disabled'); } else { $opt->configure(-state=>'disabled'); $opt1->configure(-state=>'active'); } }