Can someone tell me that how to set required validation on textInput
when click on Ok button?
At this time click on Ok button then i check every TextInput like that.
if self.name.text.strip() == "":
But if my form have more than 50 feilds then it will be very lengthy code?Can someone tell me another short way to set required validation on TextInput.
test.py
from kivy.uix.screenmanager import Screen
from kivy.app import App
from kivy.lang import Builder
from kivy.core.window import Window
from kivy.properties import ObjectProperty
from kivy.uix.textinput import TextInput
Window.size = (500, 330)
class FloatInput(TextInput):
def __init__(self, **kwargs):
super(FloatInput, self).__init__(**kwargs)
def on_text(self, instance, text):
if text !="":
print(text)
class TestScreen(Screen):
name = ObjectProperty(None)
clas = ObjectProperty(None)
def check_validation(self):
if self.name.text.strip() == "":
print("Name is blank")
elif self.clas.text.strip() == "":
print("clas is blank")
class Test(App):
def build(self):
self.root = Builder.load_file('test.kv')
return self.root
if __name__ == '__main__':
Test().run()
test.kv
#:kivy 1.10.0
TestScreen:
name:name
clas:clas
GridLayout:
cols: 2
padding : 30,30
spacing: 10, 10
row_default_height: '40dp'
Label:
text: 'Name'
FloatInput:
id: name
Label:
text: 'Class'
FloatInput:
id: clas
Button:
text: 'Ok'
on_release: root.check_validation()
Button:
text: 'Cancel'
