in reply to Asssigning widget identifier

Use a hash for your identifiers. What you did is not perl :(

Here's minimal changes to make it (sort of) work.

#!/usr/bin/perl # https://perlmonks.org/?node_id=1222918 use strict; use warnings; use Tk; my @meals; my %identifiers; my $mf = MainWindow->new; for (my $j = 1; $j < 7; $j++) { my $frame = $mf->Frame(-background => 'alice blue', -padx => 2 +0, -pady => 5) ->pack(-expand => 1, -fill => 'both', -side => 'top'); $frame->Label(-text => $meals[$j-1], -background => 'alice blue', -width => 9) ->pack(-side => 'left'); $frame->Text(-height => 6, -background => 'white', -width => 25) ->pack(-side => 'left'); my $c = 0; for (my $i = 2; $i < 9; $i++) { if ($c <= 6) {++$c;} else {$c = 1;} my $id = $j . $c; # Create identifier $identifiers{$id} = $frame->Text(-height => 6, -background => 'white', -width => 10) ->pack(-side => 'left'); } #end for $i } # End for $j $identifiers{'22'}->insert('end', 'R2, C4'); MainLoop;

Replies are listed 'Best First'.
Re^2: Asssigning widget identifier
by bliako (Abbot) on Sep 24, 2018 at 17:14 UTC

    I was updating my answer after I realised what "f22" was when tybalt89 wrote this. Which is exactly what my updated suggestion is. Glad we arrived at the same spot though I took the scenic route :)