我在一个应用程序项目中,我想将信息放入TextInputs中,使用按钮进行验证,然后创建一个.CSV文件,其中包含TextInputs中包含的内容。
我使用Builder创建了屏幕,但我不知道如何处理文本输入中包含的数据,并识别输入多于一个的每个输入。
有人告诉我StringProperty,但是我不知道如何使用它并将其实现到我的解决方案中。
<CreerSecteurScreen>:
BoxLayout:
orientation: 'vertical'
TextInput:
text: 'Nom'
TextInput:
text: 'Age'
TextInput:
text: 'Lore'
Button:
text: 'Créer le Secteur'
on_press: root.manager.current = 'admin_screen'
当前,图形部分可以很好地工作,仅此而已。无法访问TextInput中包含的数据。无法处理它,我也不知道如何从这些输入中创建CSV。
答案 0 :(得分:0)
您可以使用.text
属性从小部件中获取文本。要引用文本输入,请给它们全部id
。然后,您可以在App
类中创建一个python函数来处理它们。一个简单的例子:
main.py
from kivy.app import App
class MainApp(App):
def print_textinput_values(self, text1, text2):
print(text1)
print(text2)
MainApp().run()
main.kv
GridLayout:
cols: 1
TextInput:
id: the_first_input
TextInput:
id: the_second_input
Button:
text: "Print text"
on_release:
app.print_textinput_values(the_first_input.text, the_second_input.text)
app
代码中的kv
关键字引用您的App
类(在本示例中为MainApp
),您可以使用它来调用定义的任何函数。
id
,无论它是TextInput
,Label
,Button
还是其他任何东西。非常有用。
由于我将自己的App
类命名为MainApp
,因此它将自动尝试加载名为main.kv
的文件,因此就是这样的界面。