http://qs321.pair.com?node_id=231160


in reply to Re: Re: Re: Re: Re: perl2exe
in thread perl2exe -gui fails

ok, here it is:
#!/usr/bin/perl -w use Tk; sub grab; sub st; my $me = MainWindow->new; $menubar = $me -> Frame() -> pack('-side' => 'top','-fill' => 'x'); $filemenu = $menubar -> Menubutton('-text' =>'file') -> pack('-side' = +> 'left'); $filemenu -> command( -label => 'help', -command => sub{st;} ); $filemenu->separator(); $filemenu->command('-label'=>'exit','-command'=>sub {exit}); $me->Button(-text => 'translate to 1337', -command => sub{grab;} )->pack; $text1 = $me->Text (-font=>'14','-width'=>40, '-height'=> 1 )->pack; $me->Label(-text=> '1337 5p34k' )->pack; $text2 = $me->Text (-font=>'14','-width'=>40, '-height'=> 1 )->pack; MainLoop; sub grab { my $take = $text1->get('1.0','end'); $take =~ s/you/joo/ig; $take =~ s/\b(own)/pwn/ig; $take =~ s/good/leet/ig; $take =~ s/great/leet/ig; $take =~ s/cool/dope/ig; $take =~ s/kill/frag/ig; $take =~ s/hack/hax/ig; $take =~ s/ing/xoring/ig; $take =~ s/stupid/nub/ig; $take =~ s/dumb/nub/ig; $take =~ s/soo+/uber/ig; $take =~ s/very/uber/ig; $take =~ s/beginner/nub/ig; $take =~ s/fear/phear/ig; $take =~ tr/aA/4/; $take =~ tr/oO/0/; $take =~ tr/Ee/3/; $take =~ tr/lL/1/; $take =~ tr/tT/7/; $take =~ tr/sS/5/; $take =~ tr/zZ/2/; $text2->delete('1.0','end'); $text2->insert('1.0',"$take"); } sub st { my $me2=MainWindow->new; $me2->Label(-text=>'Created By: Narmak', -font=>'20')->pack; $me2->Label(-text=>'1337 5p34k Visual Version 1.0', -font=>'20')->pack; }

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: Re: Re: perl2exe
by dree (Monsignor) on Jan 30, 2003 at 02:17 UTC
    Ok, first please use strict and warnings in your scripts. For informations, type:
    perldoc strict perldoc warnings
    on your shell/prompt.
    Then, if you have problems with -gui option, first of all do NOT use -gui option and run the executable from the command line (not double click on it).
    Doing this, the exe tells you the problems.

    In your case, you're missing some "use somemodule" needed by perl2exe (see the manual shipped with perl2exe).

    So add
    use Tk::Menubutton; use Tk::Text;
    in your script and all goes well.
      Thanks so much, your advice was very useful