From: Frazier, J. J. <Joe.Frazier@PeopleClick.com> - 2001-09-28 17:20:16
|
Frank, one thing to remember that is not in the current versions of some docs and some samples programs. "ALL controls MUST have a -name attribute" and this must be unique in the program (NOT just the window). Hopefully, the next version to come out will correct these samples. Try this: use Win32::GUI; $main =3D Win32::GUI::Window->new( -name =3D> 'Main', -width =3D> 100,=20 -height =3D> 100, ); $main->AddLabel(-text =3D> "Hello, World", -name =3D> 'lblLabel'); = # all I added was the -name attribute. $main->Show(); Win32::GUI::Dialog(); sub Main_Terminate { -1; } =20 Enjoy! One thing, after you have played with the base Win32::GUI for a while, you should probably try Johan's excelent GuiLoft Designer. He has put in properties which are poorly documented, if at all.=20 Also, MANY of the samples are currently broke because of missing names and additionally, I believe they start you in a bad coding habit. Example: my $lbl1 =3D $main->AddLabel(-text =3D> "Hello, World", -name =3D> 'lblLabel'); =20 $lbl1->Text('Hello Master!'); # this set sets the text for the above label to 'Hello Master!' I would prefer this written as: $main->lblLabel->Text('Hello Master!'); Now, while both will work, the first just pollutes your namespace needlessly with variables that you dont need because you can access the controls using the name instead. =20 This is all just my opinion and I could be wrong about anything I said. Joe Frazier, Jr Technical Support Engineer PeopleClick 919-645-2916 joe...@pe... =20 > -----Original Message----- > From: Frank Stetzer [mailto:st...@cs...] > Sent: Friday, September 28, 2001 12:41 PM > To: per...@li... > Subject: [perl-win32-gui-users] Absolute newbie Q >=20 >=20 > I tried the "Hello, world" script from the Win32::GUI tutorial part 1. > (This is with yeterday's Active State build and Win32::GUI 0.558 > installed by ppm on Win98SE). I get the following Windows error: >=20 > PERL caused an invalid page fault in > Module MSVCRT.DLL at 0167:78003b44. > Registers: > EAX=3D01824f5c CS=3D0167 EIP=3D78003b44 EFLGS=3D00010246 > (etc.) >=20 > This is the script (hello.pl) >=20 > use Win32::GUI; > $main =3D Win32::GUI::Window->new( > -name =3D> 'Main', > -width =3D> 100,=20 > -height =3D> 100, > ); > $main->AddLabel(-text =3D> "Hello, World"); > $main->Show(); > Win32::GUI::Dialog(); >=20 > sub Main_Terminate { > -1; > } > =09 > I assume I missed some absolute first step in the process... > I scanned the listserv archive and didn't see anyone else=20 > disqualified so early in the game :-) > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > Frank Stetzer, Ph.D. st...@uw... > Research Support P.O. Box 413 > Information and Media Technologies Milwaukee, WI 53201 > University of Wisconsin - Milwaukee (414)-229-4571 >=20 >=20 > _______________________________________________ > Perl-Win32-GUI-Users mailing list > Per...@li... > https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users >=20 |
From: Forhan, M. <Mic...@tr...> - 2001-09-28 17:41:18
|
I ran the script on my system , and it worked fine: however, from all I've seen in this group, the problem is most likely that you didn't include a name on your label. That causes a lot of crashes: make a habit of -name'ing everything (even if its -name=>'label001'). Try replacing: $main->AddLabel(-text => "Hello, World"); with $main->AddLabel(-name => 'label001', -text => "Hello, World"); and try again. Hope this helps, -Mike -----Original Message----- From: Frank Stetzer [mailto:st...@cs...] Sent: Friday, September 28, 2001 9:41 AM To: per...@li... Subject: [perl-win32-gui-users] Absolute newbie Q I tried the "Hello, world" script from the Win32::GUI tutorial part 1. (This is with yeterday's Active State build and Win32::GUI 0.558 installed by ppm on Win98SE). I get the following Windows error: PERL caused an invalid page fault in Module MSVCRT.DLL at 0167:78003b44. Registers: EAX=01824f5c CS=0167 EIP=78003b44 EFLGS=00010246 (etc.) This is the script (hello.pl) use Win32::GUI; $main = Win32::GUI::Window->new( -name => 'Main', -width => 100, -height => 100, ); $main->AddLabel(-text => "Hello, World"); $main->Show(); Win32::GUI::Dialog(); sub Main_Terminate { -1; } I assume I missed some absolute first step in the process... I scanned the listserv archive and didn't see anyone else disqualified so early in the game :-) ======================================================================== Frank Stetzer, Ph.D. st...@uw... Research Support P.O. Box 413 Information and Media Technologies Milwaukee, WI 53201 University of Wisconsin - Milwaukee (414)-229-4571 _______________________________________________ Perl-Win32-GUI-Users mailing list Per...@li... https://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users |