Python 从另一个类kivy的TextInput获取数据
我想打印我在另一个类的TextInput中写的内容,我有一个MDDialog,其中有一个TextInput位于另一个类中,我想打印我写的内容,但不打印任何内容,就好像TextInput的文本没有更新一样,请帮助Python 从另一个类kivy的TextInput获取数据,python,python-3.x,kivy,kivymd,Python,Python 3.x,Kivy,Kivymd,我想打印我在另一个类的TextInput中写的内容,我有一个MDDialog,其中有一个TextInput位于另一个类中,我想打印我写的内容,但不打印任何内容,就好像TextInput的文本没有更新一样,请帮助 from kivy.lang import Builder from kivy.uix.boxlayout import BoxLayout from kivymd.app import MDApp from kivymd.uix.button import MDFlatButton
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
from kivymd.app import MDApp
from kivymd.uix.button import MDFlatButton
from kivymd.uix.dialog import MDDialog
KV = '''
<Content>
orientation: "vertical"
MDTextField:
id: t1
hint_text: "Write"
FloatLayout:
MDFlatButton:
text: "PRESS"
pos_hint: {'center_x': .5, 'center_y': .5}
on_release: app.show_confirmation_dialog()
'''
class Content(BoxLayout):
pass
class Example(MDApp):
dialog = None
def build(self):
return Builder.load_string(KV)
def show_confirmation_dialog(self):
if not self.dialog:
self.dialog = MDDialog(
title="Example:",
type="custom",
auto_dismiss=False,
content_cls=Content(),
buttons=[
MDFlatButton(
text="PRINT", text_color=self.theme_cls.primary_color,on_press=self.haha
),
],
)
self.dialog.open()
def haha(self,*args):
print("Content: "+Content().ids.t1.text)
Example().run()
你就是这样做的
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
from kivymd.app import MDApp
from kivymd.uix.button import MDFlatButton
from kivymd.uix.dialog import MDDialog
KV = '''
<Content>
orientation: "vertical"
MDTextField:
id: t1
hint_text: "Write"
FloatLayout:
MDFlatButton:
text: "PRESS"
pos_hint: {'center_x': .5, 'center_y': .5}
on_release: app.show_confirmation_dialog()
'''
class Content(BoxLayout):
pass
class Example(MDApp):
dialog = None
def build(self):
return Builder.load_string(KV)
def show_confirmation_dialog(self):
if not self.dialog:
self.dialog = MDDialog(
title="Example:",
type="custom",
auto_dismiss=False,
content_cls=Content(),
buttons=[
MDFlatButton(
text="PRINT", text_color=self.theme_cls.primary_color,on_press=self.haha
),
],
)
self.dialog.open()
def haha(self,*args):
print("Content: "+ self.dialog.content_cls.ids.t1.text)
Example().run()
来自kivy.lang导入生成器
从kivy.uix.boxlayout导入boxlayout
从kivymd.app导入MDApp
从kivymd.uix.button导入MDFlatButton
从kivymd.uix.dialog导入MDDialog
KV='''
方向:“垂直”
MDTextField:
id:t1
提示文字:“写入”
浮动布局:
MDFlatButton:
正文:“新闻”
位置提示:{'center_x':.5'center_y':.5}
发布时:应用程序显示确认对话框()
'''
课程内容(BoxLayout):
通过
类示例(MDApp):
对话框=无
def生成(自):
返回生成器。加载字符串(KV)
def显示确认对话框(自我):
如果不是self.dialog:
self.dialog=MDDialog(
title=“示例:”,
type=“自定义”,
自动退出=错误,
content_cls=content(),
按钮=[
MDFlatButton(
text=“PRINT”,text\u color=self.theme\u cls.primary\u color,on\u press=self.haha
),
],
)
self.dialog.open()
def haha(self,*args):
打印(“内容:+self.dialog.Content\u cls.ids.t1.text”)
示例().run()
非常感谢兄弟
from kivy.lang import Builder
from kivy.uix.boxlayout import BoxLayout
from kivymd.app import MDApp
from kivymd.uix.button import MDFlatButton
from kivymd.uix.dialog import MDDialog
KV = '''
<Content>
orientation: "vertical"
MDTextField:
id: t1
hint_text: "Write"
FloatLayout:
MDFlatButton:
text: "PRESS"
pos_hint: {'center_x': .5, 'center_y': .5}
on_release: app.show_confirmation_dialog()
'''
class Content(BoxLayout):
pass
class Example(MDApp):
dialog = None
def build(self):
return Builder.load_string(KV)
def show_confirmation_dialog(self):
if not self.dialog:
self.dialog = MDDialog(
title="Example:",
type="custom",
auto_dismiss=False,
content_cls=Content(),
buttons=[
MDFlatButton(
text="PRINT", text_color=self.theme_cls.primary_color,on_press=self.haha
),
],
)
self.dialog.open()
def haha(self,*args):
print("Content: "+ self.dialog.content_cls.ids.t1.text)
Example().run()