my @tx_grid_frame; my @outputEnaLpbkBut; for (my $i = 0; $i < $self->{NUM_OF_LANE_MAX}; ++$i){ $tx_grid_frame[$i+1][1] = $quick_tx_right_frm->Frame(-relief=>'groove', -bd=>1)->grid(-row => $i+1, -column => 1, -columnspan => 1, -rowspan => 1, -sticky => 'nsew'); #Output enable when loopback $outputEnaLpbkBut[$i] = $self->{W}->Add_Chk($tx_grid_frame[$i+1][1], '', 'top'); $outputEnaLpbkBut[$i] -> configure(-variable=> \${$self->{OUTPUT_ENA_LPBK}}[$i], -command => sub{ print "Test $i \n"; }); }