Thread Systray-Anwendung bleibt hängen beim Windows herunterfahren (16 answers)
Opened by bob.george at 2012-07-17 13:38

bob.george
 2012-07-18 15:52
#160015 #160015
User since
2011-09-02
104 Artikel
BenutzerIn
[default_avatar]
Vielen Dank für den Tipp und die ausführliche Erläuterung. Ich hab jetzt mal versucht das Ganze im Code zu realisieren, leider ohne Erfolg.
Vielleicht sieht jemand von euch warums nicht funzt (die subs hab ich jetzt mal weggelassen):
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/usr/bin/perl
use Win32::GUI();
use DBI;
use English;

#DOS-Fenster verstecken
my ($DOS) = Win32::GUI::GetPerlWindow();
Win32::GUI::Hide($DOS);


#Neues Fenster definieren
my $main = Win32::GUI::Window->new(
-name => 'Main',
-text => 'Monitor',
-width => 800,
-height => 200
);

#Text für fenster definieren
$font = Win32::GUI::Font->new(-size => 10 );

my $text = "Mit der Minimieren-Schaltfläche wird das Programm im systray abgelegt, 'X' beendet es.";
$main->AddLabel(-text => $text,
-font => $font);


#Icons für systray definieren
my $frage_icon = new Win32::GUI::Icon('FRAGE.ICO');
my $gut_icon = new Win32::GUI::Icon('AZ_GUT.ICO');
my $mittel_icon = new Win32::GUI::Icon('AZ_MITTEL.ICO');
my $schlecht_icon= new Win32::GUI::Icon('AZ_SCHLECHT.ICO');

#Erstermittlung AZ
my ($abfragezeit, $time_avg) = get_time_avg();

#Notify-Icon für Systray definieren
my $ni = $main->AddNotifyIcon(
-name => "NI",
-icon => $frage_icon,
-tip => "letzte Abfrage um $abfragezeit\ntime_avg: $time_avg"
);

#Änderung Notify-Icon
change_ni($abfragezeit, $time_avg);


#Timer für das main-Window definieren
my $t1 = $main->AddTimer('T1', 300000);


$SIG{KILL} = sub{ exit(); };

Win32::GUI::Dialog();


#DOS-Fenster wieder anzeigen
Win32::GUI::Show($DOS);

View full thread Systray-Anwendung bleibt hängen beim Windows herunterfahren