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

Kivy 文本编辑器输入不显示

Kivy 文本编辑器输入不显示

跃然一笑 2021-11-09 18:29:38
不幸的是,我在 kivy 和 Python 3 中遇到了错误。我还没有通过 Google 找到解决方案。我想至少获得文本输入,但它没有显示出来。只是文字本身。感谢您的时间!import kivykivy.require('1.10.1') # replace with your current kivy version !from kivy.app import Appfrom kivy.uix.floatlayout import FloatLayoutfrom kivy.uix.textinput import TextInputfrom kivy.uix.label import Labelclass ColdKivyApp(App):    def build(self):        f = FloatLayout()        label = Label(text="Cold") #I acutally orginally called it Zone unitil I changed it into Cold cause it's really cold now        f.add_widget(label)        txt = TextInput(text='', focus=True, multiline=True, cursor_blink=True, background_color=(1,1,1,1))        f.add_widget(txt)        return fif __name__ == '__main__':    ColdKivyApp().run()
查看完整描述

1 回答

?
慕盖茨4494581

TA贡献1850条经验 获得超11个赞

在构造函数中设置焦点时,TextInput 中似乎存在一个错误,解决方法是在窗口显示后立即设置焦点Clock:


import kivy

kivy.require('1.10.1') # replace with your current kivy version !

from kivy.app import App

from kivy.uix.floatlayout import FloatLayout

from kivy.uix.textinput import TextInput

from kivy.uix.label import Label

from kivy.clock import Clock


class ColdKivyApp(App):

    def build(self):

        f = FloatLayout()

        label = Label(text="Cold") 

        f.add_widget(label)

        txt = TextInput(multiline=True, cursor_blink=True, background_color=(1,1,1,1))

        f.add_widget(txt)

        Clock.schedule_once(lambda *args: setattr(txt, "focus", True))

        return f


if __name__ == '__main__':

    ColdKivyApp().run()



查看完整回答
反对 回复 2021-11-09
  • 1 回答
  • 0 关注
  • 263 浏览
慕课专栏
更多

添加回答

举报

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