Привязать TextInput к метке в файле .kv - PullRequest
0 голосов
/ 13 ноября 2018

Я следил за обучающим видео "Kivy crash course 3: более интересные взаимодействия с виджетами" Александра Тейлора, но он пишет код на python, а не в файле .kv.Я пытался следовать этому руководству, используя вместо этого файл .kv, но я не уверен, как связать текст TextInput с текстом метки.Можно ли записать его в файл .kv или его нужно записать в файл .py.Можете привести пример?

.py

from kivy.app import App

from kivy.lang import Builder
from kivy.uix.scatter import Scatter
from kivy.uix.label import Label
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.textinput import TextInput
from kivy.uix.boxlayout import BoxLayout


class MainApp(App):

    def build(self):
        return pres    

pres = Builder.load_file("main.kv")

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

.kv

BoxLayout:
    orientation: 'vertical'
    TextInput:
        size_hint_y: None
        height: 200
        font_size: 150
        hint_text: "Enter Text"
        text: ""
    FloatLayout:
        Scatter:
            Label:
                text: ""
                font_size: 150

1 Ответ

0 голосов
/ 13 ноября 2018

привязка в .kv проще из-за того, что это декларативный язык, достаточно присваивания, но для этого элемент, имеющий информацию, должен иметь идентификатор.

*. Киловольт

BoxLayout:
    orientation: 'vertical'
    TextInput:
        id: ti # <---
        size_hint_y: None
        height: 200
        font_size: 150
        hint_text: "Enter Text"
    FloatLayout:
        Scatter:
            Label:
                text: ti.text # <---
                font_size: 150
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...