Henry,
Sounds like you might be stuck in a loop some where and the GUI never
gets updated or regains control. You might want
to put some debug statements in places to see if they continuously fill
the screen. This might give you an idea where
the problem lies. You may have do $mainWindow->update() in some key
places to get a refresh on your gui. There is another method
that updates the gui, but I can't seem to remember what it is called. I
think it has something to do with idle events. Another thing to remember
is calling things like sleep or some other methods that could take long
periods of time will stall your gui. Long file reads will also stall the
gui, I found using the IO::Select package and sysreads and writes work
best for doing file io in gui apps. I think you might be using Window
based perl, so not sure if IO::Select is supported. I only work in the
Unix/Linux work and have no experience with Windows perl.
I have included a small example script that I wrote for a co-worker who
need some help with reading outside processes and displaying back in his
gui. The test.pl script creates a gui that opens an outside process using
open3, then updates a text widget with results from that process. I used
IO::Select to get output from outside process. You can also see how I use
the update method. This test script was written on Solaris 2.6 machine,
so not sure if you can use them.
Regards,
Mike
At 11:07 PM 1/29/2004 +0000, Henry Merryweather wrote:
This
did bring the Wall Panel GUI on to the screen as required when I
put a file into the directory. However, the GUI was responsive to
the cursor (for example I could not enter any values in windows and pull
down menus did not work) and after a while I got the None Responding
message in the title bar.
outside_process
Description: Binary data
test.pl
Description: Binary data
|