пустой экран, когда я выполняю простой код Kivy - PullRequest
0 голосов
/ 19 марта 2019

Я новичок в kivy и использую некоторые учебные пособия, но у меня только черный экран, в то время как на видео разработчики выводят свой виджет на экран.

import kivy
from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput


class MyGrid(GridLayout):
    def __int__(self, **kwargs):
        super(MyGrid, self).__int__(**kwargs)
        self.cols = 2
        self.add_widget(Label(text="Name: "))
        self.name = TextInput(multiline=False)
        self.add_widget(self.name)

        self.add_widget(Label(text="last name : "))
        self.lastName = TextInput(multiline=False)
        self.add_widget(self.lastname)

        self.add_widget(Label(text="email: "))
        self.emailName = TextInput(multiline=False)
        self.add_widget(self.emailname)


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


if __name__ == "__main__":
    MyApp().run()

1 Ответ

0 голосов
/ 19 марта 2019

У вас есть некоторые орфографические ошибки в коде. Первый касается функции __init__, которую вы написали __int__ Вы также используете другую переменную для назначения виджета и аналогичную (но другую ) для ее добавления (например, self.lastName = TextInput(multiline=False) и self.add_widget(self.lastname))
Этот код должен работать:

from kivy.app import App
from kivy.uix.label import Label
from kivy.uix.gridlayout import GridLayout
from kivy.uix.textinput import TextInput


class MyGrid(GridLayout):
    def __init__(self, **kwargs):
        super(MyGrid, self).__init__(**kwargs)
        self.cols = 2
        self.add_widget(Label(text="Name: "))
        self.name = TextInput(multiline=False)
        self.add_widget(self.name)

        self.add_widget(Label(text="last name : "))
        self.lastName = TextInput(multiline=False)
        self.add_widget(self.lastName)

        self.add_widget(Label(text="email: "))
        self.emailName = TextInput(multiline=False)
        self.add_widget(self.emailName)


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


if __name__ == '__main__':
    MyApp().run()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...