Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Answer: How do I make Open and Save As file dialogs? (Win32)

( #17641=categorized answer: print w/ replies, xml ) Need Help??

Q&A > GUI Programming > How do I make Open and Save As file dialogs? (Win32) contributed by ase

While I haven't any experience with Win32::GUI, I've used Perl/Tk successfully for this exact problem. The key methods are getOpenFile and getSaveFile Here's a short example:

#!/usr/bin/perl -w use Tk 8.0; use strict; my $mw = MainWindow->new( -title => 'File Test' ); my $menu_bar = $mw->Menu; $mw->configure( -menu => $menu_bar ); my $file_mb = $menu_bar->cascade( -label => '~File', -tearoff => 0 ); $file_mb->command( -label => 'Open', -underline => 0, -command => \&f_ +open ); $file_mb->command( -label => 'Save', -underline => 0, -command => \&f_ +save ); $file_mb->separator; $file_mb->command( -label => 'Exit', -underline => 1, -command => sub{ +exit} ); MainLoop; sub f_open { my $filename = $mw->getOpenFile( -title => 'Open File:', -defaultextension => '.txt', -initialdir => '.' ); ### do something with $filename warn "Opened $filename\n"; } sub f_save { my $filename = $mw->getSaveFile( -title => 'Save File:', -defaultextension => '.txt', -initialdir => '.' ); ### do something with $filename warn "Saved $filename\n"; } #

Note that Question 16.2. - Is there a file selector? of the (somewhat stale) Perl/Tk FAQ lists several alternatives. Which, if any, of these is what got built into the Tk of ActiveState Perl, I don't know...

Comment on Answer: How do I make Open and Save As file dialogs? (Win32)
Download Code
Log In?
Username:
Password:

What's my password?
Create A New User
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (7)
As of 2014-10-21 04:11 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    For retirement, I am banking on:










    Results (95 votes), past polls