Любые предложения для загрузки изображения из файла диалога? - PullRequest
0 голосов
/ 02 января 2019

Я создаю графический интерфейс для своего приложения и пытаюсь загрузить изображение из диалогового окна файла. У кого-нибудь есть предложения? Это мое первое приложение Kivy, и иногда я не могу полностью понять документацию. Я пробовал несколько способов, и лучший результат, который я получил, это изображение в левом нижнем углу экрана.

Я попробовал решение из Поместив изображение в середине метки в Kivy , но это не решило мою проблему.

Часть моего файла .kv:

<RunDemoScreen>:
    GridLayout:
        rows: 3
        cols: 2
        Button:
            text:"Test"


        Button:
            text:"File"
            on_press: root.file_dialog()

        Button:
            text: 'Back'
            on_release: root.manager.current = 'menu'

Часть моего кода на Python:

class RunDemoScreen(Screen):

    def file_dialog(self):
        Tk().withdraw()
        self.filename = askopenfilename()
        print(self.filename)

Все в этом коде работает нормально.

1 Ответ

0 голосов
/ 03 января 2019

Вам необходимо создать виджет Image, а затем изменить источник изображения на переменную self.filename, используя идентификатор, который вы ему назначите

в вашем .kv:

Image:
    id: imageWidget
    source: ''
    opacity: 0 # to make it completely invisible till your add a source file

в вашем .py:

def file_dialog(self):
    Tk().withdraw()
    self.filename = askopenfilename()
    imageWid = self.ids['imageWidget']
    imageWid.source = self.filename
    imageWid.opacity= 1 # to make it visible
...