You can subscribe to this list here.
2001 |
Jan
(226) |
Feb
(139) |
Mar
(156) |
Apr
(95) |
May
(181) |
Jun
(166) |
Jul
(80) |
Aug
(59) |
Sep
(69) |
Oct
(83) |
Nov
(142) |
Dec
(33) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(42) |
Feb
(91) |
Mar
(76) |
Apr
(113) |
May
(67) |
Jun
(68) |
Jul
(37) |
Aug
(41) |
Sep
(16) |
Oct
(135) |
Nov
(51) |
Dec
(21) |
2003 |
Jan
(37) |
Feb
(36) |
Mar
(37) |
Apr
(103) |
May
(68) |
Jun
(70) |
Jul
(77) |
Aug
(12) |
Sep
(9) |
Oct
(53) |
Nov
(88) |
Dec
(63) |
2004 |
Jan
(263) |
Feb
(106) |
Mar
(36) |
Apr
(21) |
May
(21) |
Jun
(34) |
Jul
(33) |
Aug
(34) |
Sep
(35) |
Oct
(21) |
Nov
(43) |
Dec
(63) |
2005 |
Jan
(28) |
Feb
(42) |
Mar
(29) |
Apr
(14) |
May
(41) |
Jun
(20) |
Jul
(65) |
Aug
(136) |
Sep
(41) |
Oct
(74) |
Nov
(34) |
Dec
(94) |
2006 |
Jan
(85) |
Feb
(94) |
Mar
(68) |
Apr
(103) |
May
(66) |
Jun
(51) |
Jul
(24) |
Aug
(56) |
Sep
(57) |
Oct
(85) |
Nov
(73) |
Dec
(68) |
2007 |
Jan
(59) |
Feb
(32) |
Mar
(13) |
Apr
(32) |
May
(36) |
Jun
(36) |
Jul
(64) |
Aug
(35) |
Sep
(19) |
Oct
(10) |
Nov
(13) |
Dec
(20) |
2008 |
Jan
(26) |
Feb
(41) |
Mar
(19) |
Apr
(24) |
May
(16) |
Jun
(33) |
Jul
(34) |
Aug
(4) |
Sep
(11) |
Oct
|
Nov
(26) |
Dec
(23) |
2009 |
Jan
(5) |
Feb
(2) |
Mar
(21) |
Apr
(16) |
May
(13) |
Jun
(6) |
Jul
(34) |
Aug
(2) |
Sep
(1) |
Oct
(7) |
Nov
(5) |
Dec
(24) |
2010 |
Jan
(3) |
Feb
(5) |
Mar
(6) |
Apr
(6) |
May
(14) |
Jun
(6) |
Jul
(1) |
Aug
(12) |
Sep
(10) |
Oct
(9) |
Nov
|
Dec
(2) |
2011 |
Jan
(4) |
Feb
(5) |
Mar
(30) |
Apr
(1) |
May
(2) |
Jun
(5) |
Jul
(3) |
Aug
(2) |
Sep
(3) |
Oct
|
Nov
(6) |
Dec
|
2012 |
Jan
|
Feb
(10) |
Mar
|
Apr
|
May
(1) |
Jun
(3) |
Jul
(1) |
Aug
|
Sep
(2) |
Oct
|
Nov
(2) |
Dec
(4) |
2013 |
Jan
(5) |
Feb
(3) |
Mar
|
Apr
(3) |
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
(2) |
Feb
|
Mar
|
Apr
(1) |
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(9) |
Nov
(7) |
Dec
|
2015 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(4) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(5) |
Dec
|
2019 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Robert M. <rm...@po...> - 2007-02-10 22:38:03
|
Jim Salisbury wrote: > I could not figure out how to use richedit as it does not have an > Append() method as does textfield. For the RichEdit control, you can use: $richedit->SetSel(-1,-1); # Move insertion point to the end $richedit->ReplaceSel($new_text); # Insert at the insertion point That's pretty much what the Textfield does behind it's Append() method. Regards, Rob. |
From: Robert M. <rm...@po...> - 2007-02-10 22:33:09
|
[Please keep discussion on the list] marco hofmann wrote: > Hello, > I have ActivePerl5.8 and WindowsXP > > after installing version 1.05 as described > (with ppm install ./Win32-GUI.ppd after removing the old win32::gui > installation) and starting a script, come the error message in a > window > > Der Prozedureinsprung "PL_memory_wrap" wurde in der DLL "perl58.dll" > nicht gefunden. > That means: Can't find function "PL_memory_wrap" in "perl58.dll" Robert May wrote: > What version of Perl 5.8? Can you post the output of > perl -v > > Win32::GUI 1.05 is built against ActivePerl 5.8.7, and > I've since read that there may be binary incompatibilities with > earlier 5.8 perl's, but you're the first report I've had of this ... marco hofmann wrote: > F:\>perl -v > > This is perl, v5.8.6 built for MSWin32-x86-multi-thread > (with 3 registered patches, see perl -V for more detail) > > Copyright 1987-2004, Larry Wall > > Binary build 811 provided by ActiveState Corp. http://www.ActiveState.com OK, That fits with what I said about a binary incompatibility between ActivePerl 5.8.6 and ActivePerl 5.8.7 - It's generally not noticeable, but if you try to run an extension built with ActivePerl builds between 813 and 817 against an earlier 5.8 perl installation you might see this problem. Unfortunately Win32-GUI 1.05 is build against ActivePerl build 813. My recommendation would be to upgrade your Perl installation to at least ActivePerl 5.8.7 (build 813). If you really can't do this, then let me know and I'll build you a special release that shouldn't have this problem. Thanks for the report, I'll ensure that future releases don't suffer from this problem. Regards, Rob. |
From: Robert M. <rm...@po...> - 2007-02-10 02:03:31
|
Robert May wrote: > Under WinNT/2K/XP I can't find the default limit documented (it may be > the same, but you can look using the GetLimitText() method). I think > under these OS's it should be possible to increase the allowed size with > SetLimitText() to several megabytes - Sorry, but I don't have a suitable > machine at hand to try. Default limit is same as Win98. > If you want more space than this, the try using the RichEdit class - it > should be (almost) a drop in replacement for the Textfield, and IIRC the > text limit can be increased to about 2GB. Need to add that you need to used the (mis-spelled) LimiteText() method to set the size to above 64K. $richedit->LimiteText(2**31 - 1); appears to be the biggest you can make it. Regards, Rob. |
From: Robert M. <rm...@po...> - 2007-02-10 01:38:09
|
Jim Salisbury wrote: > Am using a TextField to display a log as it occurs. > Each time there is a new line for the log I do an > Append on the TextField. Works fine except after > many entries it just stops and Hangs. It stops right in the > middle of a line being appended. It smells like there is some > internal buffer or table limit that I am running into. Can't find > any documentation or web discussion about this. > > The TextField is readonly and multiline. > > Running onWin XP, plenty of memory. > > Any advice or info on this? Under Win98 the Win32 Edit control used by Win32::GUI::Textfield is limited to about 32K bytes; It can be increased to (about?) 64K bytes using the SetLimitText() method. Under WinNT/2K/XP I can't find the default limit documented (it may be the same, but you can look using the GetLimitText() method). I think under these OS's it should be possible to increase the allowed size with SetLimitText() to several megabytes - Sorry, but I don't have a suitable machine at hand to try. If you want more space than this, the try using the RichEdit class - it should be (almost) a drop in replacement for the Textfield, and IIRC the text limit can be increased to about 2GB. Regards, Rob. |
From: Robert M. <rm...@po...> - 2007-02-10 00:55:38
|
marco hofmann wrote: > Hello, > I have ActivePerl5.8 and WindowsXP What version of Perl 5.8? Can you post the output of perl -v I built the Win32::GUI 1.05 distribution against ActivePerl 5.8.7, and I've since read that there may be binary incompatibilities with earlier 5.8 perl's, but you're the first report I've had of this ... Rob. > I tried to install win32::32 1.05, because I want to use the grid > package, which is not a part of version 1.03 (which you can install from > activestate repository). But after installing version 1.05 as described > ( with ppm install ./Win32-GUI.ppd after removing the old win32::gui > installation) and starting a script, come the error message in a window > > Der Prozedureinsprung "PL_memory_wrap" wurde in der DLL "perl58.dll" > nicht gefunden. > That means: Can't find "PL_memory_wrap" in "perl58.dll", I think > > The interpreter tolds: > > > Can't load 'C:/Perl/site/lib/auto/Win32/GUI/GUI.dll' for module > Win32::GUI: load_file:Die angegebene Prozedur wurde nicht gefunden at > C:/Perl/lib/DynaLoader.pm line 230. > at F:/Temp/guigridtest.pl line 1 > Compilation failed in require at F:/Temp/guigridtest.pl line 1. > BEGIN failed--compilation aborted at F:/Temp/guigridtest.pl line 1. > > The line 1 of the script is: > > use Win32::GUI(); > > Where's the mistake? > > Thanks and regards, > Marco > > ------------------------------------------------------------------------- > Using Tomcat but need to do more? Need to support web services, security? > Get stuff done quickly with pre-integrated technology to make your job easier. > Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo > http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users > http://perl-win32-gui.sourceforge.net/ > |
From: Jim S. <jb...@op...> - 2007-02-10 00:44:28
|
Am using a TextField to display a log as it occurs. Each time there is a new line for the log I do an Append on the TextField. Works fine except after many entries it just stops and Hangs. It stops right in the middle of a line being appended. It smells like there is some internal buffer or table limit that I am running into. Can't find any documentation or web discussion about this. The TextField is readonly and multiline. Running onWin XP, plenty of memory. Any advice or info on this? Thanks, jim salisbury |
From: marco h. <mar...@gm...> - 2007-02-09 23:15:22
|
Hello, I have ActivePerl5.8 and WindowsXP I tried to install win32::32 1.05, because I want to use the grid package, which is not a part of version 1.03 (which you can install from activestate repository). But after installing version 1.05 as described ( with ppm install ./Win32-GUI.ppd after removing the old win32::gui installation) and starting a script, come the error message in a window Der Prozedureinsprung "PL_memory_wrap" wurde in der DLL "perl58.dll" nicht gefunden. That means: Can't find "PL_memory_wrap" in "perl58.dll", I think The interpreter tolds: Can't load 'C:/Perl/site/lib/auto/Win32/GUI/GUI.dll' for module Win32::GUI: load_file:Die angegebene Prozedur wurde nicht gefunden at C:/Perl/lib/DynaLoader.pm line 230. at F:/Temp/guigridtest.pl line 1 Compilation failed in require at F:/Temp/guigridtest.pl line 1. BEGIN failed--compilation aborted at F:/Temp/guigridtest.pl line 1. The line 1 of the script is: use Win32::GUI(); Where's the mistake? Thanks and regards, Marco |
From: Eric H. <eh...@co...> - 2007-02-09 21:59:04
|
How does one go about displaying an MS-Access SQL Result Set In a Win32-GUI Listview (datasheet) so that the data stays refreshed? I imagine one would have to use OLE for this? Some sort of Persistant Connection to the SQL result set? Or actually wouldn't it have to be A MS-ACCESS VIEW? =20 I am trying to write a Win32-GUI front-end to the Access database instead of using Access Forms. Access Forms keep the datasheet views refreshed with live data. You can see the data refresh every so often. =20 I use Win32-ODBC to connect to Access and Win32-OLE to connect to Excel. PERL Application currently pulls in data from Access into the ListView and refreshes the data only for the selected row when the end-user goes into edit mode on that row. PERL Application does a select on that row only from the database to refresh that row only. PERL application also keeps the date/time (acquired from a shared network Date Server) when that row Was fetched from the database so that when the end-user goes to save the Row, the PERL Application denies the save if another end-user has updated that Row in the database since the was last fetched.=20 Eric =20 |
From: Robert M. <rm...@po...> - 2007-02-08 22:05:54
|
Waldemar Biernacki wrote: > Robert, > > thank you for your efforts and email, I'll try my best to clarify... Thank you. I can see the problem clearly. It's because you're destroying a window while in the middle of processing an event sent to it, and the code isn't expecting that, and so ends up trying to access some of the window's properties after they have been freed. I've got a solution to most of it, but there are a couple of areas where I'm not sure how to resolve it ... some more thought required, but I'll try to get a fix into the next release. For the record, here's the shortest example I can come up with that exhibits the problem: #!perl -w use strict; use warnings; use Win32::GUI(); my $mw; $mw = Win32::GUI::Window->new( -onKeyDown => sub { undef $mw; return -1; }, ); $mw->Show(); Win32::GUI::Dialog(); __END__ >>> The point is that in WindowsXP it works fine but in Widows 98 SP2 it >>> does not. >>> Windows' error screen points to USER32.DLL error. I concur that the problem only manifests itself on Win98, but that's just lucky. With various variations of the script I can get the error to appear in either User32.dll or Perl58.dll. Here's one way around the problem - I think this is pretty close to the behaviour of your current script (except for behaviour on clicking the 'close' button on the windows, which is somewhat unusual here, but I didn't know what you were expecting: #!perl -w use strict; use warnings; use Win32::GUI qw(VK_LEFT VK_RIGHT VK_RETURN); my @Window; makewindow(); $Window[0]->AddLabel( -pos => [4,20], -size => [150,150], -text => "HELP:\n\n". " Right=add window\n". " Left=close (only top) window\n". " Enter=switch windows", ); while(@Window) { Win32::GUI::Dialog(); pop @Window; } exit(1); sub makewindow { return if @Window > 4; push @Window, Win32::GUI::Window->new( -title => @Window ? "Item: " . @Window : "Main Window", -pos => [10+(@Window*202), 20], -size => [200, 200], -onKeyDown => \&keydown, ); $Window[-1]->Show(); return; } sub keydown { my ( $self, undef, $key ) = @_; if($key == VK_RIGHT) { makewindow(); } elsif($key == VK_LEFT) { return -1; } elsif($key == VK_RETURN) { for my $index (0 .. $#Window) { if($self == $Window[$index]) { $Window[++$index % @Window]->SetFocus(); } } } return 0; } __END__ Regards, Rob. |
From: Waldemar B. <wb...@sa...> - 2007-02-05 10:20:38
|
Robert, thank you for your efforts and email, I'll try my best to clarify... The idea is to create and manage many windows. The clue is that I do not know how many of them can be created. To open new window we use Right key, to close Left and to switch between windows Enter. I was working on it and - when I had changed destroying window to hiding them everything was OK. However I hope to destroy them because of the fact I don't know how many of them I have to create. >> The point is that in WindowsXP it works fine but in Widows 98 SP2 it >> does not. >> Windows' error screen points to USER32.DLL error. > What is the error that you get? It apears small window with the following information (in my translation): PERL couse an error: incorrect page in the module USER32.DLL at 0167:bff558c6. Registry: EAX=00000001 CS=0167 EIP=bff558c6 EFLGS=00010202 EBX=00000100 SS=016f ESP=0153f998 EBP=0153fa10 ECX=00000d1c DS=016f ESI=02c761ec FS=0d2f EDX=01554280 ES=016f EDI=0155424c GS=0000 Bytes in CS:EIP: 66 81 39 90 68 75 25 66 81 79 06 90 68 75 1d 81 Stos: 02ba4a51 00000d1c 000006a0 00000100 00000025 014b0001 0155424c 02c761ec 00000000 04427695 16d717c7 000089f4 61ec0038 000002c7 89e60e17 17c71248 > If you can post a smaller, complete example showing your problem, and > removing all the stuff that is not necessary, then I will help you try > to identify the problem. I enclose new refreshed code at the end Waldemar ############################################################ #! perl -w use strict; use Win32::GUI qw(); my $last = -1; my @Window; my @start = (0); my @rows = (5); my $which = 0; my $help; makewindow(); Win32::GUI::Dialog(); exit(1); sub Window_Terminate { return -1 } sub makewindow { return 1 if $last > 3; $last++; $start[$last] = 0; $rows[$last] = 5+$last; $Window[$last]->{SCREEN} = new Win32::GUI::Window ( -title => "Item: $last", -pos => [10+$last*202, 20], -size => [200, 200], -name => "Window_$last", -onKeyDown => \&keydown, ); if ( $last == 0 ) { $Window[$last]->{HELP} = $Window[$last]->{SCREEN}->AddLabel( -parent => $Window[$last]->{SCREEN}, -pos=>[4,20], -size=>[150,150], -text=>"HELP:\n\n Right=add window\n Left=close (only top) window\n Enter=switch between windows\n", -multiline=>1, ) } $Window[$last]->{SCREEN}->Show(1); print "item $last created\n"; $which = $last; } sub keydown { my ( $self, undef, $key ) = @_; my $hash_EVENT = Win32::GUI::GetKeyboardState; if ( $hash_EVENT->[39] ) { makewindow(); } elsif ( $hash_EVENT->[13] ) { if ( $which == $last ) { $which = 0 } else { $which++ } $Window[$which]->{SCREEN}->SetFocus(); } elsif ( $hash_EVENT->[37] ) { if (( $which == $last )&&( $last>0)) { print "item $last deleted\n"; $Window[$which]->{SCREEN}->DESTROY if $Window[$which]->{SCREEN}; $last--; $which--; $Window[$which]->{SCREEN}->SetFocus(); } elsif ( $last == 0 ) { print "item $last deleted\n"; return -1; } } return 1; } ############################################################ |
From: Robert M. <rm...@po...> - 2007-02-04 17:49:27
|
Waldemar Biernacki wrote: > Hello, > > I have one question more. > Later on a code is given (I have Win32::GUI ver 1.05). > Sorry! - it is not as simple as it should be! When I run what you have posted I get: no file [] ! and I haven't investigated what I need to put in a file to get the script to run. > The point is that in WindowsXP it works fine but in Widows 98 SP2 it > does not. > Windows' error screen points to USER32.DLL error. What is the error that you get? > Maybe someone could help me and show how to change the code to be > working in 98? If you can post a smaller, complete example showing your problem, and removing all the stuff that is not necessary, then I will help you try to identify the problem. (I haven't run your code, but it looks to me like you might be passing a negative first parameter to SetCellText() in your read_file() subroutine. Is this intentional?) Regards, Rob. |
From: Robert M. <rm...@po...> - 2007-02-04 17:39:59
|
Waldemar Biernacki wrote: > I have more general questions. Please start a new message, and set the subject to reflect your questions. If you haven't seen it, can I suggest that you read this: http://www.catb.org/~esr/faqs/smart-questions.html > In the first win32::gui tutorial they say, that $w->show() does not show > anything but make the object visible, > whereas Win32::GUI::Dialog() does it. That's not how I read part One of the Win32::GUI tutorial: http://perl-win32-gui.sourceforge.net/cgi-bin/docs.cgi?doc=tutorial-part1 > My questions: > > 1. I create each of the window using Win32::GUI::Window->new(...). May I > use ONE > Win32::GUI::Dialog() function for all the windows or should I use as > many Dialogs as many windows I have? Without seeing more of what you mean, then it's difficult to answer precisely, but, generally, you want to call Win32::GUI::Dialog() once (per thread of execution). > 2. Where I can find detail description of the Win32::GUI::Dialog() function? What there is can be found here: http://perl-win32-gui.sourceforge.net/cgi-bin/docs.cgi?doc=reference-methods#dialog You may also want to look at the source, and read about the related Win32 functions on MSDN. > 3. Is it possible to turn off the main loop to implement my own event > managment, whereas graphics will be taken from Win32::GUI. Again, you question is not really explicit enough, but I think Win32::GUI::DoEvents() may be what you're looking for? Regards, Rob. |
From: Steve L. <ste...@sc...> - 2007-02-02 19:50:33
|
Hi all Does anyone know where I should be looking to determine if the user has selected "large" or "very large" fonts in the control panel -> display -> appearance settings? Steve |
From: Reini U. <ru...@x-...> - 2007-02-02 13:47:25
|
I regularly build and use: pp (free) with cygwin and ActivePerl-5.8.6.811 (cpan PAR - http://par.perl.org/) and perl2exe with ActivePerl-5.8.6.811. (non-free) 2007/2/1, Eric Hansen <eh...@co...>: > Can some folks recommend to me a PERL compiler vendor/version that they > are > Getting to work fine on Windows XP and backward compatible > With Windows 2000 professional/98SE? > > Please supply binary build version of Win32-GUI and > ActiveState/ActivePerl tested with this compiler. > > I am seeing problems with my PERL apps compiled with an older version of > IndigoStar PERL compiler 5.03. I am using Win32-GUI 1.02 and ActivePerl > 5.6.1 multi-thread on Windows XP. > > Win32 Message Boxes are showing up blank? > IndigoStar does not know what is wrong and recommends I purchase a newer > compiler. |
From: David K. <da...@gi...> - 2007-02-02 02:24:36
|
Hi ERIC! Eric Hansen <eh...@co...> wrote: > Can some folks recommend to me a PERL compiler vendor/version that > they are Getting to work fine on Windows XP and backward compatible > With Windows 2000 professional/98SE? >=20 > Please supply binary build version of Win32-GUI and > ActiveState/ActivePerl tested with this compiler. >=20 > I am seeing problems with my PERL apps compiled with an older version > of IndigoStar PERL compiler 5.03 [and they recommend] I purchase a > newer compiler. Try ActiveState's "PerlApp", part of their Perl Development Kit: http://www.activestate.com/Products/Perl_Dev_Kit/ PS: Why do you YELL every time you say Perl? -dave |
From: <jez...@ho...> - 2007-02-01 23:34:10
|
Try PerlApp, Activestate 5.8.7 and the latest version of Win32:GUI. Cheers, Jeremy. -----Original Message----- From: "Eric Hansen" <eh...@co...> To: "per...@li..." <per...@li...> Sent: 01/02/07 21:11 Subject: [perl-win32-gui-users] Perl Compiler Recommendation Needed for Win32-GUI/ActivePerl Can some folks recommend to me a PERL compiler vendor/version that they are Getting to work fine on Windows XP and backward compatible With Windows 2000 professional/98SE? Please supply binary build version of Win32-GUI and ActiveState/ActivePerl tested with this compiler. I am seeing problems with my PERL apps compiled with an older version of IndigoStar PERL compiler 5.03. I am using Win32-GUI 1.02 and ActivePerl 5.6.1 multi-thread on Windows XP. Win32 Message Boxes are showing up blank? IndigoStar does not know what is wrong and recommends I purchase a newer compiler. Eric Dallas, TX SAMPLE CODE: use Win32::GUI; $M = new Win32::GUI::Menu( "&File" => "File", " > E&xit" => "Exit", "&Help" => "Help", " > &About - My Application" => "About", ); $W = new GUI::Window( -title => "My Application", -left => 100, -top => 150, -width => 600, -height => 200, -menu => $M, -name => "Window", -style => ws_sysmenu ); $W->Show(); $W->BringWindowToTop(); Win32::GUI::Dialog(); sub Exit_Click { return -1; } sub About_Click { Win32::GUI::DoEvents(); $W->InvalidateRect(1); Win32::GUI::MessageBox($W,"This is a Sample Application", "About - My Application v1.0",64,); $W->BringWindowToTop(); Win32::GUI::DoEvents(); $W->InvalidateRect(1); } #-- END REM PERL COMPILER SCRIPT @echo off cls echo "Compiling test.pl Please wait..." c:\perl\bin\perl2exe -gui test.pl > test.log echo "done!" ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Perl-Win32-GUI-Users mailing list Per...@li... https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users http://perl-win32-gui.sourceforge.net/ |
From: <jez...@ho...> - 2007-02-01 23:28:57
|
Try PerlApp, Activestate 5.8.7 and the latest version of Win32:GUI. Cheers, Jeremy. -----Original Message----- From: "Eric Hansen" <eh...@co...> To: "per...@li..." <per...@li...> Sent: 01/02/07 21:11 Subject: [perl-win32-gui-users] Perl Compiler Recommendation Needed for Win32-GUI/ActivePerl Can some folks recommend to me a PERL compiler vendor/version that they are Getting to work fine on Windows XP and backward compatible With Windows 2000 professional/98SE? Please supply binary build version of Win32-GUI and ActiveState/ActivePerl tested with this compiler. I am seeing problems with my PERL apps compiled with an older version of IndigoStar PERL compiler 5.03. I am using Win32-GUI 1.02 and ActivePerl 5.6.1 multi-thread on Windows XP. Win32 Message Boxes are showing up blank? IndigoStar does not know what is wrong and recommends I purchase a newer compiler. Eric Dallas, TX SAMPLE CODE: use Win32::GUI; $M = new Win32::GUI::Menu( "&File" => "File", " > E&xit" => "Exit", "&Help" => "Help", " > &About - My Application" => "About", ); $W = new GUI::Window( -title => "My Application", -left => 100, -top => 150, -width => 600, -height => 200, -menu => $M, -name => "Window", -style => ws_sysmenu ); $W->Show(); $W->BringWindowToTop(); Win32::GUI::Dialog(); sub Exit_Click { return -1; } sub About_Click { Win32::GUI::DoEvents(); $W->InvalidateRect(1); Win32::GUI::MessageBox($W,"This is a Sample Application", "About - My Application v1.0",64,); $W->BringWindowToTop(); Win32::GUI::DoEvents(); $W->InvalidateRect(1); } #-- END REM PERL COMPILER SCRIPT @echo off cls echo "Compiling test.pl Please wait..." c:\perl\bin\perl2exe -gui test.pl > test.log echo "done!" ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Perl-Win32-GUI-Users mailing list Per...@li... https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users http://perl-win32-gui.sourceforge.net/ |
From: Eric H. <eh...@co...> - 2007-02-01 21:11:12
|
Can some folks recommend to me a PERL compiler vendor/version that they are Getting to work fine on Windows XP and backward compatible With Windows 2000 professional/98SE?=20 Please supply binary build version of Win32-GUI and ActiveState/ActivePerl tested with this compiler. I am seeing problems with my PERL apps compiled with an older version of IndigoStar PERL compiler 5.03. I am using Win32-GUI 1.02 and ActivePerl 5.6.1 multi-thread on Windows XP. =20 Win32 Message Boxes are showing up blank? IndigoStar does not know what is wrong and recommends I purchase a newer compiler.=20 Eric Dallas, TX SAMPLE CODE: use Win32::GUI; $M =3D new Win32::GUI::Menu( "&File" =3D> "File", " > E&xit" =3D> "Exit", "&Help" =3D> "Help", " > &About - My Application" =3D> "About", ); $W =3D new GUI::Window( -title =3D> "My Application", -left =3D> 100, -top =3D> 150, -width =3D> 600, -height =3D> 200, -menu =3D> $M, -name =3D> "Window", -style =3D> ws_sysmenu ); $W->Show(); $W->BringWindowToTop(); Win32::GUI::Dialog(); =20 sub Exit_Click { return -1; =20 } sub About_Click { Win32::GUI::DoEvents(); $W->InvalidateRect(1); Win32::GUI::MessageBox($W,"This is a Sample Application", "About - My Application v1.0",64,); $W->BringWindowToTop(); Win32::GUI::DoEvents(); $W->InvalidateRect(1); } #-- END REM PERL COMPILER SCRIPT @echo off cls echo "Compiling test.pl Please wait..." c:\perl\bin\perl2exe -gui test.pl > test.log echo "done!" |
From: Stefan B. <te...@go...> - 2007-02-01 01:59:30
|
1. How do I REMOVE the icon of a window? 2. If I have three menu items, and I want one (the last) align to the left, how do I do that? my $Menu = Win32::GUI::MakeMenu( "&Menu1" => "Menu1", "&Menu2" => "Menu2", "&Menu3" => "Menu3", ); I tried: "&Menu3" => { align => "left" }, but that doesnt work. 3. Is there any documentation about "Win32::GUI::MakeMenu"? I just found "Win32::GUI::Menu" and there is near no information :/ 4. If I have a listview with 2 columns, how do I insert an item into the 2. column? I appreciate every little help! |
From: Robert M. <rm...@po...> - 2007-01-31 23:06:41
|
Waldemar Biernacki wrote: > Could anyone give me an advice how to dubug perl Win32::GUI script? > > I tried Activestate's and OptiPerl's debuggers but both stop on > Win32::GUI::Dialog() function and I do not know what to do next. I can't speak for the debuggers you mention, but when using the perl command-line debugger (perl -d somescript.pl), it is important to 'step into' Win32::GUI::Dialog(), and not 'step over'. Then when you do something that trigger an event you should find the script stopped at the start of your event handler. Regards, Rob. |
From: Waldemar B. <wb...@sa...> - 2007-01-29 18:45:42
|
Hello, I have one question more. Later on a code is given (I have Win32::GUI ver 1.05). Sorry! - it is not as simple as it should be! The point is that in WindowsXP it works fine but in Widows 98 SP2 it does not. Windows' error screen points to USER32.DLL error. Maybe someone could help me and show how to change the code to be working in 98? Waldemar #################################################### #! perl -w use strict; use Win32::GUI qw(); use Win32::GUI::Grid; my $file = $ARGV[0]; unless ( -e $file ) { print "no file [$file] !\n"; exit(1); } my $last = -1; my @Window; my @start = (0); my @rows = (5); my $which = 0; my $help; makewindow(); Win32::GUI::Dialog(); exit(1); sub Window_Terminate { return -1 } ############################################################### sub makewindow { return 1 if $last > 3; $last++; $start[$last] = 0; $rows[$last] = 5+$last; $Window[$last]->{SCREEN} = new Win32::GUI::Window ( -title => "Item: $last", -pos => [10+$last*202, 20], -size => [200, 400], -name => "Window_$last", -onKeyDown => \&keydown, ); $Window[$last]->{GRID} = new Win32::GUI::Grid ( -parent => $Window[$last]->{SCREEN}, -name => "Grid_$last", -pos => [0, 0], -size => [190,400], -onKeyDown => \&keydown, ); if ( $last == 0 ) { $Window[$last]->{HELP} = $Window[$last]->{SCREEN}->AddLabel( -parent => $Window[$last]->{SCREEN}, -pos=>[4,200], -size=>[150,150], -text=>"HELP:\nF4=add\nF7=switch\nEnter=close (the last only)", -multiline=>1, ) } $Window[$last]->{SCREEN}->Show(1); $Window[$last]->{GRID}->SetEditable(0); $Window[$last]->{GRID}->SetRows($rows[$last]); $Window[$last]->{GRID}->SetColumns(1); $Window[$last]->{GRID}->SetFixedRows(0); $Window[$last]->{GRID}->SetFixedColumns(0); $Window[$last]->{GRID}->SetColumnWidth ( 0, 200 ); $Window[$last]->{GRID}->Refresh(); read_file($last); print "item $last created\n"; $which = $last; } sub read_file { my $which = shift; if ( open ( FH, "<$file" )) { for ( my $i = 0; $i < $start[$which]+$rows[$which] ; $i++ ) { my $file_row = <FH>; $file_row =~ s/\t/____/g; $file_row =~ s/\s//g; $Window[$which]->{GRID}->SetCellText( $i-$start[$which], 0, $file_row ) if $i>=$start[$which]; } close FH; } } sub keydown { my ( $self, undef, $key ) = @_; my $hash_EVENT = Win32::GUI::GetKeyboardState; my $_EVENT = what_event( $hash_EVENT ); if ( $_EVENT eq 'F4' ) { makewindow(); } elsif ( $_EVENT eq 'F7' ) { if ( $which == $last ) { $which = 0 } else { $which++ } $Window[$which]->{SCREEN}->SetFocus(); } elsif ( $_EVENT eq 'Enter' ) { if (( $which == $last )&&( $last>0)) { print "item $last deleted\n"; $Window[$which]->{SCREEN}->DESTROY if $Window[$which]->{SCREEN}; $last--; $which--; } elsif ( $last == 0 ) { print "item $last deleted\n"; return -1; } } elsif ( $_EVENT eq 'Down' ) { $start[$which] += 1; } elsif ( $_EVENT eq 'Up' ) { $start[$which] -= 1; $start[$which] = 0 if $start[$which] < 0; } elsif ( $_EVENT eq 'PgDn' ) { $start[$which] += $rows[$which]; } elsif ( $_EVENT eq 'PgUp' ) { $start[$which] -= $rows[$which]; $start[$which] = 0 if $start[$which] < 0; } read_file($which); $Window[$which]->{GRID}->Refresh(); return 1; } #------------------------------------ sub what_event { my $_EVENT = shift; my $result = ''; my $SHIFT = ''; my $CTRL = ''; my $ALT = ''; if (( $_EVENT->[160] )||( $_EVENT->[161] )) { $SHIFT = 'Shift' } if (( $_EVENT->[162] )||( $_EVENT->[163] )) { $CTRL = 'Ctrl' } if (( $_EVENT->[164] )||( $_EVENT->[165] )) { $ALT = 'Alt' } if (( $_EVENT->[16] )) { $SHIFT = 'Shift' } if (( $_EVENT->[17] )) { $CTRL = 'Ctrl' } if (( $_EVENT->[18] )) { $ALT = 'Alt' } ######################################### # Windows 98 tricks: #--------------------------------------- my $counter = 0; for (my $ii=0; $ii<256; $ii++) { $counter++ if $_EVENT->[$ii] } if ( $counter > 1 ) { $_EVENT->[115] = 0 } ######################################### for ( my $i = 0; $i < 256; $i++ ) { if ( $_EVENT->[$i] ) { if ( $i == 0 ) { $result .= 'Null' } elsif ( $i == 8 ) { $result = 'Backspace' } elsif ( $i == 9 ) { $result = $CTRL.$SHIFT.'Tab' } elsif ( $i == 13 ) { $result = $CTRL.$SHIFT.'Enter' } elsif ( $i == 27 ) { $result = $CTRL.$SHIFT.'Escape' } elsif ( $i == 33 ) { $result = $CTRL.$SHIFT.'PgUp' } elsif ( $i == 34 ) { $result = $CTRL.$SHIFT.'PgDn' } elsif ( $i == 36 ) { $result = $CTRL.$SHIFT.'Home' } elsif ( $i == 35 ) { $result = $CTRL.$SHIFT.'End' } elsif ( $i == 38 ) { $result = $CTRL.$SHIFT.'Up' } elsif ( $i == 37 ) { $result = $CTRL.$SHIFT.'Left' } elsif ( $i == 39 ) { $result = $CTRL.$SHIFT.'Right' } elsif ( $i == 40 ) { $result = $CTRL.$SHIFT.'Down' } elsif ( $i == 45 ) { $result = $CTRL.$SHIFT.'Insert' } elsif ( $i == 46 ) { $result = $CTRL.$SHIFT.'Delete' } elsif (( 47 < $i )&&( $i < 58 )) { $result = $CTRL.$SHIFT.chr( $i ) } elsif (( 64 < $i )&&( $i < 91 )) { my $shift = 0; $shift = 32 if (( $SHIFT eq 'Shift' )||( $CTRL eq 'Ctrl' )); $result = $CTRL.$ALT.chr( $i + 32 - $shift ) } elsif (( 111 < $i )&&( $i < 124 )) { $result = $ALT.$CTRL.$SHIFT.'F'.($i-111); } else { if (( $i != 160 )&&( $i != 161 )&&( $i != 16 )&& ( $i != 162 )&&( $i != 163 )&&( $i != 17 )&& ( $i != 164 )&&( $i != 165 )&&( $i != 18 )) {} } } } return $result; } |
From: Waldemar B. <wb...@sa...> - 2007-01-29 07:53:48
|
Hey! I have more general questions. Introduction: I wrote an application which seems to act in WindowsXP correctly but in Windows98 very unstable. The main feature of the application is that it contains dynamic number of windows which can be created while the application is running. In the first win32::gui tutorial they say, that $w->show() does not show anything but make the object visible, whereas Win32::GUI::Dialog() does it. My questions: 1. I create each of the window using Win32::GUI::Window->new(...). May I use ONE Win32::GUI::Dialog() function for all the windows or should I use as many Dialogs as many windows I have? 2. Where I can find detail description of the Win32::GUI::Dialog() function? 3. Is it possible to turn off the main loop to implement my own event managment, whereas graphics will be taken from Win32::GUI. Waldemar |
From: Waldemar B. <wb...@sa...> - 2007-01-28 23:18:45
|
Hello! Could anyone give me an advice how to dubug perl Win32::GUI script? I tried Activestate's and OptiPerl's debuggers but both stop on Win32::GUI::Dialog() function and I do not know what to do next. regards Waldemar. |
From: Sean H. <jal...@ho...> - 2007-01-26 04:08:14
|
On Thu, 25 Jan 2007 09:44:59 -0700, alexander Serechenko Alexander = <sk...@gm...> wrote: > Is there any way to copy some transparent image over another? > Only way I found is to use AlphaCopyToDC to some virtual DC, but i > can't find any way to get Win32::GUI::DC not associated with any > device. > Is any one can help me? Win32::GUI::DC::CreateCompatibleDC() Creates a memory device context (DC) compatible with the specified devic= e. That's all the documentation there is. According to the source (DC.xs), = it = returns a Win32::GUI::DC object, not just a handle. Of course, if it is = = just a handle, it's easy enough to do: my $dc =3D bless { -handle =3D> Win32::GUI::CreateCompatibleDC(), }, 'Win32::GUI::DC'; And according to Microsoft, calling it with no handle should give you a = DC = compatible with the current screen. Here's an excerpt: The CreateCompatibleDC function creates a memory device context (DC) = compatible with the specified device. HDC CreateCompatibleDC( HDC hdc // handle to DC ); Parameters hdc [in] Handle to an existing DC. If this handle is NULL, the function = creates a memory DC compatible with the application's current screen. Return Values If the function succeeds, the return value is the handle to a memory DC.= If the function fails, the return value is NULL. Remarks A memory DC exists only in memory. When the memory DC is created, its = display surface is exactly one monochrome pixel wide and one monochrome = = pixel high. Before an application can use a memory DC for drawing = operations, it must select a bitmap of the correct width and height into= = the DC. To select a bitmap into a DC, use the CreateCompatibleBitmap = function, specifying the height, width, and color organization required.= When a memory DC is created, all attributes are set to normal default = values. The memory DC can be used as a normal DC. You can set the = attributes; obtain the current settings of its attributes; and select = pens, brushes, and regions. |
From: Steve L. <ste...@sc...> - 2007-01-25 21:17:27
|
Hi all Does anyone here use the POE system (http://poe.perl.org) with their win32 perl scripts? It looks like it could be quite useful for my project, but I am looking for some knowledgeable "thumbs up/down" remarks from the wise users on this list :) Steve |