Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Countdown

by batkins (Chaplain)
on Dec 25, 2003 at 14:11 UTC ( #316979=sourcecode: print w/replies, xml ) Need Help??
Category: GUI Programming
Author/Contact Info
Description: This is a simple Tk script to countdown the days, hours, minutes, seconds, and milliseconds until a particular event. It requires Tk, DateTime, and Time::HiRes.

The script creates a window in the upper-right corner of the screen and displays the countdown information there.

Have fun.

Update: Upper-left

use warnings;
use strict;

use Tk;
use DateTime;
use Time::HiRes qw(time);

my $time;

# Specify the day you're counting down to here
my $then = DateTime->new(year => 2003, month => 12, day => 30, hour =>
+ 17,
                         minute => 30, second => 0, time_zone => 'loca
+l');

my $mw = MainWindow->new;
$mw->Label(-textvariable => \$time, -font => "{arial} 12 bold")->pack;

$mw->repeat(4, \&update);
update();

$mw->overrideredirect(1);
$mw->geometry("+0+0");

MainLoop;

sub update {
    my $now = DateTime->from_epoch(epoch => time, time_zone => 'local'
+);

    my $dur = ($then - $now);
    $time =  $dur->days . " days  ";
    $time .= $dur->hours . ":";
    $time .= sprintf("%.2d", $dur->minutes) . ":";
    $time .= sprintf("%.2d", $dur->seconds) . ":";
    $time .= sprintf("%.3d", int($dur->nanoseconds / 1000000));
}

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: sourcecode [id://316979]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (6)
As of 2020-09-25 21:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If at first I donít succeed, I Ö










    Results (141 votes). Check out past polls.

    Notices?