note
milarepa
I started using pack because in most documentation said it's the simplest geometry manager. Honestly at the beginning I felt like a daunting task, but with practice I managed to produce the results I wanted. <br>
Besides taking care of which side you "stack" your widgets, I found that the most important thing with pack is the order in which you place your widgets. For example, I wanted to put several checkbuttons one after the other horizontally. Then I wanted a button just below these checkbuttons. However, after minutes of trial and error I found that the code for the button should go first than the checkbuttons. Here is a snapshot of the code:<p>
<code>
#!/usr/perl/bin/perl
use Tk;
use warnings;
use strict;
my ($search, $mw, $entry, $text, $io, $checks);
my $id = 0;
$mw = MainWindow -> new;
$mw -> title("AIM");
$mw -> bind('<Key-Escape>' => sub { exit } );
#**************** text *************************
my $scrollbar = $mw->Scrollbar( );
$scrollbar->pack(-side => 'right', -fill => 'y');
$text = $mw -> Text(-font=>"{Verdana} 10 {bold}", -width => 50, -height => 25,
, -yscrollcommand => ['set' => $scrollbar]) -> pack(-side=>'right');
$scrollbar->configure(-command => ['yview' => $text]);
#**************** entry *************************
$entry = $mw -> Entry(-font=>"{Verdana} 10 {bold}", -textvariable => \$search) -> pack(-side=>'top');
$entry -> bind('<Key-Return>' => \&search );
$entry -> focus;
#**************** button *************************
my $btn_clip = $mw -> Button(-text=>"Copy to Clipboard",
-command=>sub {$text->clipboardAppend($text->get("1.0", 'end'));})
->pack(-side=>'bottom', -expand=>'1', -anchor=>'nw');
#*********** checkbutton *************************
foreach (qw/address telephone keyword all/) {
$checks = $mw -> Checkbutton( -text => $_) -> pack(-side=>'left', -anchor=>'n');
}
MainLoop;
</code>
Hope this helps...!!!!
456624
456624