猿问

Kivy 文本编辑器输入不显示

不幸的是,我在 kivy 和 Python 3 中遇到了错误。我还没有通过 Google 找到解决方案。我想至少获得文本输入,但它没有显示出来。只是文字本身。感谢您的时间!


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


class 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 f


if __name__ == '__main__':

    ColdKivyApp().run()


跃然一笑
浏览 264回答 1
1回答

慕盖茨4494581

在构造函数中设置焦点时,TextInput 中似乎存在一个错误,解决方法是在窗口显示后立即设置焦点Clock: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 Labelfrom kivy.clock import Clockclass 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 fif __name__ == '__main__':    ColdKivyApp().run()
随时随地看视频慕课网APP

相关分类

Python
我要回答