Grygonos has asked for the wisdom of the Perl Monks concerning the following question:

I have the following code which I created because the Excel.Application.SendKeys method didn't work for me. It just did nothing honestly.

#!/Perl/bin/perl -w require Win32::OLE; require Win32::OLE::Const; use Tk; use strict; use constant{TRUE => -1, FALSE => 0}; my $filename; my $tk_win = MainWindow->new; my $name_entry = $tk_win->Entry->pack; $tk_win->Button(-text=>'Prepare It!', -command=>\&getFilename)->pack; &Tk::MainLoop; #Returns the entry sub getFilename { $filename = $name_entry->get; exit; }

I want the user to specify a filename via a Tk window (mainly so they don't have to use the 'scary' command line) and then have the Tk window jump out of &Tk::MainLoop and let the rest of the script continue.

If you have any idea how to accomplish this or how I can get Excel.Application.SendKeys to work I would greatly appreciate your input

Replies are listed 'Best First'.
Re: Quit Tk but continue with script... is it possible?
by Mr. Muskrat (Canon) on Jul 29, 2003 at 15:50 UTC

    In place of exit;, try $tk_win->destroy;.

    #!/Perl/bin/perl -w use strict; use Tk; my $filename; my $tk_win = MainWindow->new; my $name_entry = $tk_win->Entry->pack; $tk_win->Button(-text=>'Prepare It!', -command=>\&getFilename)->pack; MainLoop; print "Outside the MainLoop now!\n"; print "filename is $filename\n"; sub getFilename { $filename = $name_entry->get; $tk_win->destroy; }