EditorFileDialog
继承: ConfirmationDialog < AcceptDialog < Window < Viewport < Node < Object
编辑器使用的 FileDialog 的修改版。
描述
EditorFileDialog 是 FileDialog 的增强版,只对编辑器插件可用。额外的功能包括收藏列表、最近文件列表和以缩略图网格而不是列表的形式查看文件的能力。
属性
| ||
dialog_hide_on_ok |
| |
| ||
| ||
| ||
| ||
| ||
| ||
title |
|
方法
void | add_filter(filter: String, description: String = “”) |
void | add_option(name: String, values: PackedStringArray, default_value_index: int) |
void | add_side_menu(menu: Control, title: String = “”) |
void | |
get_option_default(option: int) const | |
get_option_name(option: int) const | |
get_option_values(option: int) const | |
get_selected_options() const | |
get_vbox() | |
void | |
void | |
void | set_option_default(option: int, default_value_index: int) |
void | set_option_name(option: int, name: String) |
void | set_option_values(option: int, values: PackedStringArray) |
信号
选择目录时触发。
选择文件时触发。
files_selected(paths: PackedStringArray) 🔗
选择多个文件时触发。
枚举
enum FileMode: 🔗
FileMode FILE_MODE_OPEN_FILE = 0
EditorFileDialog 仅可以选择一个文件,选择同意窗口将会打开这个文件。
FileMode FILE_MODE_OPEN_FILES = 1
EditorFileDialog 可以选择多个文件,选择同意窗口将会打开所有选择的文件。
FileMode FILE_MODE_OPEN_DIR = 2
EditorFileDialog 可以选择一个目录,选择同意窗口将会打开这个目录。
FileMode FILE_MODE_OPEN_ANY = 3
EditorFileDialog 可以选择一个文件或者目录,选择同意窗口将会打开这个文件或目录。
FileMode FILE_MODE_SAVE_FILE = 4
EditorFileDialog 可以选择一个文件,选择同意窗口将会保存这个文件。
enum Access: 🔗
Access ACCESS_RESOURCES = 0
EditorFileDialog 只能查看 res://
目录里的内容。
Access ACCESS_USERDATA = 1
EditorFileDialog 只能查看user://
目录里的内容。
Access ACCESS_FILESYSTEM = 2
EditorFileDialog 可以查看整个本地文件系统。
enum DisplayMode: 🔗
DisplayMode DISPLAY_THUMBNAILS = 0
EditorFileDialog 以图标的形式显示资源。
DisplayMode DISPLAY_LIST = 1
EditorFileDialog 以文件名列表的形式显示资源。
属性说明
用户可以选择文件的位置,包括 res://
、user://
和本地文件系统。
当前占用的目录。
当前选择的文件。
地址栏中的文件系统路径。
bool disable_overwrite_warning = false
🔗
如果为 true
,EditorFileDialog 将不会在覆盖文件之前警告用户。
DisplayMode display_mode = 0
🔗
void set_display_mode(value: DisplayMode)
DisplayMode get_display_mode()
EditorFileDialog 向用户显示资源的视图格式。
对话框的打开或保存模式,会影响选择行为。见 FileMode。
PackedStringArray filters = PackedStringArray()
🔗
void set_filters(value: PackedStringArray)
PackedStringArray get_filters()
可用的文件类型过滤器。例如,这样就只会显示 .png
和 .gd
文件:set_filters(PackedStringArray(["*.png ; PNG Images","*.gd ; GDScript Files"]))
。也可以在单个过滤器中指定多种文件类型。选中 "*.png, *.jpg, *.jpeg ; 支持的图片"
时,将同时显示 PNG 和 JPEG 文件。
Note: The returned array is copied and any changes to it will not update the original property value. See PackedStringArray for more details.
对话框中附加的 OptionButton 和 CheckBox 的数量。
bool show_hidden_files = false
🔗
如果为 true
,隐藏的文件和目录将在 EditorFileDialog 中可见。该属性与 EditorSettings.filesystem/file_dialog/show_hidden_files 同步。
方法说明
void add_filter(filter: String, description: String = “”) 🔗
将一个逗号分隔的文件名 filter
且带有可选 description
的选项添加到的 EditorFileDialog,这限制了可以选择的文件。
filter
的格式应为 "文件名.扩展名"
,其中文件名和扩展名可以是 *
,以匹配任意字符串。不允许使用以 .
开头的过滤器(即空文件名)。
例如,"*.tscn, *.scn"
的 filter
和 "场景"
的 description
会产生过滤文本“场景 (* .tscn, *.scn)”。
void add_option(name: String, values: PackedStringArray, default_value_index: int) 🔗
向文件对话框添加额外的 OptionButton。如果 values
为空,则添加的是 CheckBox。
default_value_index
应该是 values
的索引号。如果 values
为空,则应该是 1
(选中)或 0
(未选中)。
void add_side_menu(menu: Control, title: String = “”) 🔗
将给定的 menu
添加到文件对话框的侧边,在顶部显示标题文本 title
。仅支持一个侧边菜单。
void clear_filters() 🔗
移除“All Files(*)”筛选器之外的所有筛选器。
返回所选文件的 LineEdit。
警告:这是一个必需的内部节点,删除和释放它可能会导致崩溃。如果你希望隐藏它或其任何子项,请使用它们的 CanvasItem.visible 属性。
int get_option_default(option: int) const 🔗
返回索引为 option
的 OptionButton 或 CheckBox 的默认值索引。
String get_option_name(option: int) const 🔗
返回索引为 option
的 OptionButton 或 CheckBox 的名称。
PackedStringArray get_option_values(option: int) const 🔗
返回索引为 option
的 OptionButton 值的数组。
Dictionary get_selected_options() const 🔗
返回一个 Dictionary,其中包含附加 OptionButton 和/或 CheckBox 的选定值。Dictionary 的键是名称,而值是选定的值索引。
VBoxContainer get_vbox() 🔗
返回用于显示文件系统的 VBoxContainer。
警告:这是一个必需的内部节点,移除和释放它可能会导致崩溃。如果你想隐藏它或它的任何子节点,请使用 CanvasItem.visible 属性。
void invalidate() 🔗
通知 EditorFileDialog 它的数据视图不再准确。在下次视图更新时更新视图内容。
void popup_file_dialog() 🔗
以编辑器中文件对话框的默认大小和位置显示该 EditorFileDialog,如果有当前文件则选择该文件名。
void set_option_default(option: int, default_value_index: int) 🔗
设置索引为 option
的 OptionButton 或 CheckBox 的默认值索引。
void set_option_name(option: int, name: String) 🔗
设置索引为 option
的 OptionButton 或 CheckBox 的名称。
void set_option_values(option: int, values: PackedStringArray) 🔗
设置索引为 option
的 OptionButton 的选项值。