Hi, I don't use windows and didn't write this, but here is a snippet posted recently, it may give you a head start.
#!/usr/bin/perl
use warnings;
use strict;
#The function name is defined as "Win32::GUI::NotifyIcon".
#You will need to be carefull about the order of your sub...
#Here a sample script to let's you see, just choose a nice win32 ico a
+nd
#name it god.ico in the same dir from where you will launch this scrip
+t:
#---------------
BEGIN{
use Win32::Console;
Win32::Console::Free();
}
use Win32::GUI;
use Tk;
$mw = MainWindow -> new;
$mw -> wm('geometry', '0x0+0+0');
$mw->overrideredirect(1);
&do_win32_stuff;
MainLoop;
#--------------------------------
sub do_win32_stuff{
$mw_win32 = new Win32::GUI::DialogBox(
-width => 0,
-height => 0,
-name => 'MainWindow');
$icon = new Win32::GUI::Icon('god.ico');
new Win32::GUI::NotifyIcon(
$mw_win32,
-name => "Notify",
-id => 1,
-icon => $icon,
-tip => "I\'am in the Systray!");
$call = Win32::GUI::Dialog();
$mw_win32->Notify->Delete(-id => 1);
sub Notify_Click{
&my_menu;
}
}
#--------------------------------
sub my_menu{
$popup = $mw->Menu(Name => 'popupMenu', -tearoff => 0);
$popup->command(-label => 'Number 1',-command => [\&do_label,1] );
$popup->command(-label => 'Number 2',-command => [\&do_label,2]);
$popup->separator;
$popup->command(-label => 'Number 3', -command => [\&do_label,3]);
$popup->command(-label => 'Number 4', -command => [\&do_label,4]);
$popup->command(-label => 'Number 5', -command => [\&do_label,5]);
$popup->separator;
$popup->command(-label => 'Quit', -command => [ \&stop]);
$popup->Popup(-popover => 'cursor', -popanchor => 'nw');
}
#--------------------------------
sub stop{
exit;
}
#--------------------------------
sub do_label{
if(Exists($top)){
$label-> configure(-text => "I\'am $_[0]");
} else {
$top = $mw ->Toplevel;
$top->title(" Numbers");
$top->focus;
$label = $top->Label (-text => "I\'am $_[0]",
-relief => 'groove',
-width => '24')->pack;
}
}
I'm not really a human, but I play one on earth.
flash japh
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link or
or How to display code and escape characters
are good places to start.