Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  TK::CHOOSEDIRECTORY (3)

.ds Aq ’


Tk::chooseDirectory - pops up a dialog box for the user to select a directory.



$widget-><B>chooseDirectoryB>( ?option value ...? );


The method <B>chooseDirectoryB> is implemented as a perl wrapper on the core tk command <B>tk_chooseDirectoryB>, and $widget is passed as the argument to the hidden <B>-parentB> option.

The <B>chooseDirectoryB> method pops up a dialog box for the user to select a directory. The following option-value pairs are possible as command line arguments:
<B>-initialdirB> dirname Specifies that the directories in directory should be displayed when the dialog pops up. If this parameter is not specified, then the directories in the current working directory are displayed. If the parameter specifies a relative path, the return value will convert the relative path to an absolute path. This option may not always work on the Macintosh. This is not a bug. Rather, the General Controls control panel on the Mac allows the end user to override the application default directory.
<B>-parentB> $widget Makes $widget the logical parent of the dialog. The dialog is displayed on top of its parent window.
<B>-titleB> titleString Specifies a string to display as the title of the dialog box. If this option is not specified, then a default title will be displayed.
<B>-mustexistB> boolean Specifies whether the user may specify non-existant directories. If this parameter is true, then the user may only select directories that already exist. The default value is false.


Perl does not have a concept of encoded filesystems yet. This means that operations on filenames like opendir and open still use byte semantics. Tk however uses character semantics internally, which means that you can get filenames with the UTF-8 flag set in functions like chooseDirectory, getOpenFile and similar. It’s the user’s responsibility to determine the encoding of the underlying filesystem and convert the result into bytes, e.g.

    use Encode;
    my $dir = $mw->chooseDirectory;
    $dir = encode("windows-1252", $dir);
    opendir DIR, $dir or die $!;

See also When Unicode Does Not Happen in perlunicode and Unicode in Filenames in perltodo.


    my $dir = $mw->chooseDirectory(-initialdir => ~,
                                   -title => Choose a directory);
    if (!defined $dir) {
        warn No directory selected;
    } else {
        warn "Selected $dir";


Tk::getOpenFile, Tk::getOpenFile


directory selection dialog
Search for    or go to Top of page |  Section 3 |  Main Index

perl v5.20.3 CHOOSEDIRECTORY (3) 2013-11-15

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.