use strict;
use warnings;
use Tk;
use Date::Manip;
my $time = UnixDate('now',"The time is: %r on %B %d, %Y");
my $mw = MainWindow->new( -title => 'Time Test' );
my @pack_opts = qw/-fill both -padx 2 -pady 2 -expand 1/;
my $frm = $mw->Frame( -bd => 2 )->pack;
my $lbl = $frm->Label( -text => $time )->pack(@pack_opts);
my $oper = $frm->Button(
-text => "Entrada De Operaciones",
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $client = $frm->Button(
-text => 'Informe De Clientes',
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $general = $frm->Button(
-text => 'Informe General',
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $util = $frm->Button(
-text => 'Utilidades',
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $exit = $frm->Button(
-text => 'Exit Application',
-command => sub { $mw->destroy },
)->pack(@pack_opts);
$mw->repeat( 1000 => sub { update_time() } );
MainLoop;
sub update_time {
my $time = UnixDate( 'now', "The time is: %r on %B %d, %Y" );
$lbl->configure( -text => $time );
}
Or even better, with Tk::StrfClock:
use strict;
use warnings;
use Tk;
use Tk::StrfClock;
my $mw = MainWindow->new( -title => 'Time Test' );
my @pack_opts = qw/-fill both -padx 2 -pady 2 -expand 1/;
my $frm = $mw->Frame( -bd => 2 )->pack;
$frm->StrfClock()->pack(@pack_opts);
my $oper = $frm->Button(
-text => "Entrada De Operaciones",
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $client = $frm->Button(
-text => 'Informe De Clientes',
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $general = $frm->Button(
-text => 'Informe General',
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $util = $frm->Button(
-text => 'Utilidades',
-command => sub { print "Hello World\n" },
)->pack(@pack_opts);
my $exit = $frm->Button(
-text => 'Exit Application',
-command => sub { $mw->destroy },
)->pack(@pack_opts);
MainLoop;
Regards, Stefan |