A long time ago in a galaxy (oops, no, a city) far, far away, I wrote this as
one of my first Tk programs.
Initially it was slightly longer, but then I squeezed a little (hehehe) to see if I
could get a
"15 in 15(lines)" program.
#!/usr/bin/perl use Tk; use strict; my @a = map $_->[0], sort {$a->[1] <=> $b->[1]} map [$_, rand], 0..15; my ($mw, $hole) = new MainWindow; sub xy { -row => $_[0] % 4, -column => int $_[0] / 4 } for my $ii (0..15) { my ($num, $i, $but) = ($a[$ii], $ii); $hole = $i, next unless $num; $but = $mw->Button(-text => $num, -width => 2, -height => 2, -comman +d => sub { $but->grid(xy(($i,$hole) = ($hole,$i))) if abs $i - $hole == 4 or abs $i - $hole == 1 and int $i/4 == int $hole/4 })->grid(xy $i); } MainLoop;
In reply to Re: Tk - Discipulus 15 puzzle
by tybalt89
in thread Tk - Discipulus 15 puzzle
by Discipulus
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |