Kivy Popup показывает фоновые виджеты - PullRequest
0 голосов
/ 29 июня 2018

Я пытаюсь использовать всплывающий виджет в Kivy, но каждый раз, когда я запускаю код, всплывающее окно просто имеет 2 меньшие версии виджета на главном экране.

Это мой код Python (файл .py):

import kivy
kivy.require('1.9.0')
from kivy.app import App
from kivy.uix.widget import Widget


class Layout(Widget):
    pass


class KivyTestApp(App):
    def build(self):
        return Layout()


app = KivyTestApp()
app.run()

и это мой код Kivy (файл .kv):

#: import Factory kivy.factory.Factory

<MyPopup@Popup>:
    title: 'Test'
    size_hint: None, None
    size: 400, 400

<Layout>:
    Button:
        id: but
        size: root.width, root.height
        background_normal: ''
        background_color: .5, .7, .9, 1
        text: 'Press me to open the popup'
        pos: 0, 0
        on_press: Factory.MyPopup().open()

Это создает окно, которое выглядит так:

enter image description here

И всплывающее окно выглядит так:

enter image description here

Как видите, я не добавил контент во всплывающее окно, но кнопки по-прежнему появляются! Если бы кто-нибудь мог мне помочь, это было бы здорово, и спасибо заранее!

1 Ответ

0 голосов
/ 29 июня 2018

У Kivy уже есть внутренний виджет с именем Layout, который разбит на все подклассы. Попробуйте назвать свой собственный виджет чем-то другим.

...