From: Piske, H. <Har...@bo...> - 2001-04-06 21:46:08
|
| -----Original Message----- | From: Morbus Iff [mailto:mo...@di...] | | Ok. I have no clue what I'm talking about. Welcome to the club ;-) | to a friend, who has done VB stuff in the past, but nothing | with Perl GUI's. Takes some getting used to. Goes for both VB and Win32-GUI. Transitioning from one to the other can bring you close to serious brain damage because you forget to consider the different philosophies. Pretty much like changing from a car to a motorbike. You'll be amazed how fast and easy it is, but you wonder how to get your groceries home. | I was able to tell the webserver to non-block, in other | words, to listen | for a request for 1 second and move on. What I'd like to have | happen is | that when the webserver moves on, the GUI window listens for | events for a | second, and then moves on as well. So, there'd be a 1 second | time share | between the webserver listening and the GUI window listening. | | Is this possible? And how? Yes. I suggest you (and/or your friend) first go through the tutorial and Erick's wonderful collection of basic info @ http://www.jeb.ca/howto/The_Win32-GUI_HOWTO.html Once you know how (and how easy) to design a GUI, just do so. After Show()ing the window, when you usually give it full control using Win32::GUI::Dialog(), you just start your console program. And whenever this thing can spare a time slice (after the 1-second-listen), you do $abort = Win32::GUI::DoEvents(); which will make your GUI do what it wants to do, firing all pending events / messages. This call returns asap, ie when no more messages are in the queue. Now all that's left is exit your program if $abort < 0, and maybe one or two more interactions with the GUI, like evaluating user preferences from checkboxes and writing to textfields instead of printing to the console. And, again: FORGET WHAT YOU KNOW ABOUT VB. Doesn't help here. Basic knowledge about windows, controls, messages, methods, etc is OK, but that's it. Have fun Harald |
From: Piske, H. <Har...@bo...> - 2001-04-07 17:07:54
|
>This message was sent from Geocrawler.com by "Carol" > >I have tried to do thie but get the following >error: > >Can't locate auto/Win32/GUI/DoEvents.al in @INC > >when trying to use: > >Win32::GUI::DoEvents(); > >??? > >Any idears? Actually, yes. My guess is you ran into an old version of Win32-GUI that has a bad version number, making it look newer than the current one, so that the installer will not replace it. In a DOS window, do ppm query and look for the line with Win32-GUI. It should read 0.0.558 in the version number. If it's 0.99, that's the bad one. Go ppm remove Win32-GUI ppm install Win32-GUI that should re-install the (now updated) version from ActiveState. You need to have an open internet connection for that. If it does not work, download Win32-GUI-0.0.558.tar.gz from http://dada.perl.it/#gui, unzip it somewhere and do ppm install Win32-GUI.ppd from that directory. Reconfirm with ppm query that you now have the current version 0.0.558. Have fun Harald |