查看源代码 wxFilePickerCtrl (wx v2.4.3)

此控件允许用户选择文件。

通用实现是一个按钮,点击时会弹出wxFileDialog。原生实现可能有所不同,但通常是一个(小的)小部件,用于访问文件选择对话框。只有在wxUSE_FILEPICKERCTRL设置为 1(默认)时才可用。

样式

此类支持以下样式

  • wxFLP_DEFAULT_STYLE:默认样式:包括 wxFLP_OPEN | wxFLP_FILE_MUST_EXIST,以及在 wxMSW 和 wxOSX 下的 wxFLP_USE_TEXTCTRL。

  • wxFLP_USE_TEXTCTRL:在选择器按钮的左侧创建一个文本控件,该控件完全由wxFilePickerCtrl管理,用户可以使用它来指定路径(请参阅 SetPath)。文本控件会自动与按钮的值同步。使用wxPickerBase中定义的函数来修改文本控件。

  • wxFLP_OPEN:创建一个选择器,允许用户选择要打开的文件。

  • wxFLP_SAVE:创建一个选择器,允许用户选择要保存的文件。

  • wxFLP_OVERWRITE_PROMPT:只能与 wxFLP_SAVE 组合使用:在选择文件之前向用户请求确认。

  • wxFLP_FILE_MUST_EXIST:只能与 wxFLP_OPEN 组合使用:在弹出wxFileDialog中选择的文件必须是现有文件。请注意,如果也使用了wxFLP_USE_TEXTCTRL,用户仍然可以在文本控件中输入不存在的文件名,此标志是对用户的提示,而不是保证程序所选文件确实存在。

  • wxFLP_CHANGE_DIR:在每次用户选择文件更改时更改当前工作目录。

  • wxFLP_SMALL:使用较小版本的控件,使用小“...”按钮而不是普通的“浏览”按钮。此标志是自 wxWidgets 2.9.3 以来的新功能。

参见

此类派生自以下类,可以使用这些类的函数:

wxWidgets 文档:wxFilePickerCtrl

事件

从此类发出的事件类型

摘要

函数

使用给定的参数创建此小部件。

销毁对象

返回当前所选文件的绝对路径。

初始化对象并使用所有参数调用create/4

设置当前所选文件的绝对路径。

类型

-type wxFilePickerCtrl() :: wx:wx_object().

函数

链接到此函数

create(This, Parent, Id)

查看源代码
-spec create(This, Parent, Id) -> boolean()
                when This :: wxFilePickerCtrl(), Parent :: wxWindow:wxWindow(), Id :: integer().

等效于create(This, Parent, Id, [])

-spec create(This, Parent, Id, [Option]) -> boolean()
                when
                    This :: wxFilePickerCtrl(),
                    Parent :: wxWindow:wxWindow(),
                    Id :: integer(),
                    Option ::
                        {path, unicode:chardata()} |
                        {message, unicode:chardata()} |
                        {wildcard, unicode:chardata()} |
                        {pos, {X :: integer(), Y :: integer()}} |
                        {size, {W :: integer(), H :: integer()}} |
                        {style, integer()} |
                        {validator, wx:wx_object()}.

使用给定的参数创建此小部件。

如果控件成功创建,则返回 true,如果创建失败,则返回 false。

-spec destroy(This :: wxFilePickerCtrl()) -> ok.

销毁对象

-spec getPath(This) -> unicode:charlist() when This :: wxFilePickerCtrl().

返回当前所选文件的绝对路径。

-spec new() -> wxFilePickerCtrl().
-spec new(Parent, Id) -> wxFilePickerCtrl() when Parent :: wxWindow:wxWindow(), Id :: integer().

等效于new(Parent, Id, [])

-spec new(Parent, Id, [Option]) -> wxFilePickerCtrl()
             when
                 Parent :: wxWindow:wxWindow(),
                 Id :: integer(),
                 Option ::
                     {path, unicode:chardata()} |
                     {message, unicode:chardata()} |
                     {wildcard, unicode:chardata()} |
                     {pos, {X :: integer(), Y :: integer()}} |
                     {size, {W :: integer(), H :: integer()}} |
                     {style, integer()} |
                     {validator, wx:wx_object()}.

初始化对象并使用所有参数调用create/4

链接到此函数

setPath(This, Filename)

查看源代码
-spec setPath(This, Filename) -> ok when This :: wxFilePickerCtrl(), Filename :: unicode:chardata().

设置当前所选文件的绝对路径。

如果控件使用wxFLP_FILE_MUST_EXIST且不使用wxFLP_USE_TEXTCTRL样式,则filename必须是现有文件的名称,如果不是这种情况,原生 wxGTK 实现将简单地忽略它(在其他平台下使用的通用实现目前甚至接受无效的文件名,但这在未来可能会更改,请不要依赖于能够使用它来使用不存在的路径)。