刷新/重新加载 FileChooser

Refresh / Reload FileChooser

目前我经常使用 FileChooser,但我没有在 docs 中找到任何关于刷新小部件的提及。这个小部件很棒,但是如果有人想刷新显示的文件,则需要从当前目录移动才能刷新文件。

问题是当你有一个 单个 目录作为 rootpath 并且里面只有文件时,因此不可能进行这样的移动。

我的问题是,如果我想避免 FileChooser 的任何浪费 removing/adding 并尽可能短地刷新嵌套在中的 FileChooser一个 kv 文件。

在我搜索 filechooser.py 之后,我找到了 code,它在目录之间的每次移动时触发。鉴于 FileChooserIconViewFileChooserListView 继承自 FileChooserController,对函数的访问很简单,不需要额外的导入。


假设我们有 filechooser = FileChooserIconView():

filechooser._update_files() 效果很好,当 FileChooser 嵌套在某处时,可以使用 id

轻松访问它

更多调整 Clock.schedule_interval(filechooser._update_files, t) 可能会有所帮助,您可以在合理的时间内更新目录内容。

(我在这里添加它,因为我发现没有提到它,但是它可能对某人有用。)