Hi,

I tried to use a Grid control in one of my scripts,
that will be updated by a child process. Unfortunately,
the script always exits immediatly after the child has
done its work.
I removed all unnecessary code, the following script
exits after clicking the test button:

use Win32::GUI;
use Win32::GUI::Grid;
my $wndMain = new Win32::GUI::DialogBox (
    -size           => [800, 500],
    -name           => 'wndMain',
    -text           => "test",
);
$wndMain -> AddButton (
    -pos            => [10, 10],
    -size           => [100, 21],
    -name           => 'btnTest',
    -text           => 'test',
);
$wndMain -> AddGrid (
    -pos            => [10, 40],
    -size           => [300, 420],
    -name           => 'grdArtists',
);
$wndMain -> Show ();
Win32::GUI::Dialog ();
sub btnTest_Click {
    if (! defined (my $pid = fork ())) {
        die "fork failed: $!\n";
    }
    elsif ($pid) {
        print "parent: $$\n";
    }
    else {
        print "child: $$\n";
    }
}
sub wndMain_Terminate { -1; }

If you remove the Grid control, the script works
fine. I am using current versions of Perl, Win32::GUI
and Win32::GUI::Grid. Is this a bug in the Grid or
am I doing something wrong?

Thanks,
Steffen Mueller


Reply via email to