TextInput Kivy 的自动“焦点"
问题描述
我有一个如下所示的文本输入小部件:
I have a textinput widget that looks like this:
<ReaderWidget>:
Label:
text: 'Please scan EBT card'
font_size: root.height/8
size: self.texture_size
bold: True
color: 0, 0.70, 0.93, 1
TextInput:
focus: True
password: True
multiline: False
cursor: 0, 0
根据用户按下另一个小部件中的按钮,小部件会动态添加到布局中.目前,用户必须在输入文本之前将鼠标/手指指向文本框,并且我希望光标在文本框中准备好接收文本,而无需用户通过鼠标按下来指示.有没有办法做到这一点?
The widget is dynamically added to the layout based on the user pressing a button in another widget. Currently the user has to point the mouse/finger into the text box before entering text, and I want the cursor to be in the text box ready to receive text without the user having to indicate by mouse press. Is there a way to do this?
似乎 focus : True
应该这样做.但它似乎没有.
It seems like focus : True
should do it. But it doesn't seem to.
解决方案
我知道这很旧,但是当我尝试做一些非常相似的事情时,我发现了这个问题.我用于添加 TextInput(并设置其焦点)的代码位于按钮的 on_press 处理程序中.按下会导致 TextInput 被添加到布局中并设置焦点,但是当按钮被释放时它会失去焦点.将我的代码移动到 on_release 解决了这个问题.
I know this is old but I found this question when I was trying to do something very similar. My code for adding the TextInput (and setting it's focus) was in the on_press handler for a button. A press would cause the TextInput to be added to the layout and it's focus set, but then it would lose focus when the button was released. Moving my code to on_release fixed the problem.
相关文章