为了账号安全,请及时绑定邮箱和手机立即绑定

Kivy 标签文本不更新

Kivy 标签文本不更新

慕姐4208626 2023-08-08 16:46:55
我正在与 Kivy 一起开发日历程序。我的问题出在 print_appointment_to_label 函数中。我在函数末尾写了appointment_label.text =appointment_name_file_content,但标签仅在我重新启动程序时才更新。如果您想知道 label_id_file_content 代表“1jal”,即标签 id。谢谢你的帮助朱利叶斯Python:# diable multitouchfrom kivy.config import ConfigConfig.set('input', 'mouse', 'mouse,multitouch_on_demand')from kivy.app import Appfrom kivy.uix.screenmanager import Screen,ScreenManagerfrom kivy.lang.builder import Builderfrom kivy.uix.popup import Popupfrom kivy.uix.floatlayout import FloatLayoutfrom kivy.clock import Clockclass screenmanager(ScreenManager):    passclass PopupContent(FloatLayout):    def store_appointment_name(self):        appointment_name = self.ids.appointment_name.text        with open("appointment_name_file","w") as appointment_name_file:            appointment_name_file.write(appointment_name)        with open("label_id_file","r") as label_id_file:            label_id_file_content = label_id_file.read()        #check month        if "ja" in label_id_file_content:            Ja = JanuaryWindow()            Ja.__init__()class MonthWindow(Screen):    passclass JanuaryWindow(Screen):    def __init__(self, **kwargs):        super(JanuaryWindow, self).__init__(**kwargs)        Clock.schedule_once(self.print_appointment_to_label)    def print_appointment_to_label(self,dt):        with open("appointment_name_file", "r") as appointment_name_file:            appointment_name_file_content = appointment_name_file.read()        with open("label_id_file", "r") as label_id_file:            label_id_file_content = label_id_file.read()        appointment_label = self.ids[label_id_file_content]        appointment_label.text = appointment_name_file_content
查看完整描述

1 回答

?
桃花长相依

TA贡献1860条经验 获得超8个赞

您的安排不正确,以下说法: Clock.schedule_once(self.print_appointment_to_label) 应该是: Clock.schedule_once(self.print_appointment_to_label, .5)



查看完整回答
反对 回复 2023-08-08
  • 1 回答
  • 0 关注
  • 126 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信