in reply to Re^2: Perl Tk Button Disabled
in thread Perl Tk Button Disabled

So you should now have all almost the pieces you need to work out how to manage not changing button color in chg_btn when it ought not be changed. The missing part is passing the current sensor state into chg_btn in some fashion. Where you set up button call backs you can:

my %context; ... $button->bind('<ButtonRelease-1>' => sub{chg_btn(\%context, @_});

and something similar wherever you set up the sensor handling callback/sub. You can then

sub sensorHandler { my ($context, ...) @_; $context->{sensorOn} = $data !~ /(?<![\w-])OFF(?![\w-])/i; ... }

and in your button handler you can

sub chg_btn { my ($context, ...) = @_; $btn1->configure(-background => "green", -foreground => "black") if !$context->{sensorOn}; }
Optimising for fewest key strokes only makes sense transmitting to Pluto or beyond