... #Create Labels and headings my @wkdays = qw/M T W R F Sa Su/; my %labelColumns; my $i = 0; foreach ( qw/On Program Browse/, @wkdays ) { $labelColumns{$_} = $i++; $mid_frame -> Label( -text => "$_", -relief => "sunken", -padx => 5 ) -> grid( -column => $labelColumns{$_}, -row => 0, -padx => 0 ); } ... # Time Checkbuttons for my $dy ( @wkdays ) { $mid_frame -> Checkbutton( -variable => \$files[$index][$labelColumns{$dy}]) ->grid( -row=>$_, -column=>$labelColumns{$dy}, -padx => 0, -pady => 5 ); } ...