如何在Kivy中获取使用fileChooser选择的文件的信息?

squ*_*rel 2 python filechooser kivy

如何通过fileChooser获取我选择的文件的信息?以下是我的一些代码块:

self.fileChooser = fileChooser = FileChooserListView(size_hint_y=None, path='/home/')
...
btn = Button(text='Ok')
btn.bind(on_release=self.load(fileChooser.path, fileChooser.selection))
...
def load(self, path, selection):
    print path,  selection
Run Code Online (Sandbox Code Playgroud)

这样做是在我最初打开fileChooser时打印实例中的路径和选择.当我选择一个文件并单击"确定"时,没有任何反应.

Nyk*_*kin 6

此示例可能对您有所帮助:

import kivy

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder

import os

Builder.load_string("""
<MyWidget>:
    id: my_widget
    Button
        text: "open"
        on_release: my_widget.open(filechooser.path, filechooser.selection)
    FileChooserListView:
        id: filechooser
        on_selection: my_widget.selected(filechooser.selection)
""")

class MyWidget(BoxLayout):
    def open(self, path, filename):
        with open(os.path.join(path, filename[0])) as f:
            print f.read()

    def selected(self, filename):
        print "selected: %s" % filename[0]


class MyApp(App):
    def build(self):
        return MyWidget()

if __name__ == '__main__':
    MyApp().run()
Run Code Online (Sandbox Code Playgroud)