I am attempting to get an MDI application to work but I have run
into a problem with event processing. After reading the MSDN
information on MDI and poking around in the GUI.XS files the
following snippet is what I came up with. It seems to draw the
windows as expected, but none of the events work properly.

The windows can be minimized, maximized and moved around. However
they never get focus, I can't find any way to interact with them.
Does anyone know what I'm doing wrong?

Thanks,
Michael

----


use Win32::GUI;


$Window1 = new Win32::GUI::Window(
        -name => "Window1",
        -text => "Window1",
        -width  => 500,
        -height => 400,
        -left   => 100,
        -top    => 100,
);

$MDI = new Win32::GUI::Window(
        -name   => "MDI",
        -class  => 'MDICLIENT',
        -text   => "MDI object",
        -width  => 500,
        -height => 400,
        -left   => 0,
        -top    => 0,
        -style  => WS_VISIBLE | WS_CHILD | WS_CLIPCHILDREN,
        -parent => $Window1,
);

$Window2 = new Win32::GUI::Window(
        -name           => "Window2",
        -text           => "MDI Window2",
        -width          => 300,
        -height         => 200,
        -left           => 0,
        -top            => 0,
        -parent         => $MDI,
        -style          => WS_VISIBLE | WS_CHILD,
        -exstyle        => WS_EX_MDICHILD,
);

$Window1->Show();
Win32::GUI::Dialog();


Reply via email to