Thread MainWindow in frame einbetten: Perl/Tk (11 answers)
Opened by alexus-777 at 2004-06-06 02:03

ptk
 2004-06-08 14:05
#42216 #42216
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Hmmm, beim Vergroessern des Fensters sehe ich den Fehler auch. Es macht anscheinend Probleme, wenn man forkt, nachdem das erste MainWindow erzeugt wurde. Folgendes sollte aber funktionieren, vielleicht sogar unter Windows, falls dort pipe() unterstuetzt wird:
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
#!/usr/bin/perl
use strict;
use warnings;
use Tk;

pipe(RDR,WTR);
if (fork == 0) {
close WTR;
chomp(my $id = scalar <RDR>);
close RDR;
my $mw2 = MainWindow->new(-use => $id);
$mw2->Label(-text => "Das andere Fenster")->pack();
MainLoop();
CORE::exit();
}

close RDR;
my $mw = new MainWindow;
$mw->Label(-text => "Hier kommt das eingebettete Fenster:")->pack();
my $f = $mw->Frame(-container => 1)->pack();
my $id = $f->id;
$mw->update; # wichtig, Fenster muss gemappt sein!
print WTR "$id\n";
close WTR;
MainLoop();

View full thread MainWindow in frame einbetten: Perl/Tk