章节知识点总揽
4.4 TextInput输入框
Kivy中的TextInput控件提供了可以编辑的纯文本框,支持Unicode编码、多行、光标导航、选择和剪切板等多种功能。
4.4.1 使用方法
在.py内使用: 需要导入TextInput类,通过TextInput类生成一个文本框,并设置相关样式,再通过add_widget()方法添加到布局中即可,关键代码如下:
from kivy.uix.textinput import TextInput #引入控件
ti = TextInput(text='copy.com') #指定属性
self.add_widget(ti) #添加到布局
新建main.py文件,内容如下:
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.textinput import TextInput
class FloatLayoutWidget(FloatLayout):
def __init__(self,**kwargs):
super().__init__(**kwargs)
ti = TextInput(text='copy.com')
self.add_widget(ti)
class TextInputApp(App):
def build(self):
return FloatLayoutWidget()
if __name__ == '__main__':
TextInputApp().run()
相比之下,在.kv文件中实现就非常简单,无需引入即可使用。关键代码如下:
TextInput: #添加一个文本框
text:'cocpy.com' #显示的文本
4.4.2 常用属性
在Kivy中,为了方便设置TextInput输入值的样式,Kivy提供了大量的属性,关于TextInput的常用属性及说明如下表所示:
TextInput常用属性
| 属性 | 说明 |
| text | 文本内容 |
| text_lauguage | 文本语言,例如:zh_CN、en_US、fr和ja |
| halign | 文本的水平对齐方式,可设置为auto(默认)、left、center和right等属性 |
| multiline | 是否显示多行文本,默认属性为True |
| allow_copy | 是否允许复制文本,默认属性为True |
| auto_indent | 自动缩进多行文字,默认属性为False |
| font_size | 文本的字体大小,以像素为单位,默认为15sp |
| foreground_color | 前景颜色,格式为rgba,默认属性为[0,0,0,1] |
| minimum_height | 文本框内容的最小高度 |
| password | 是否用password_mask替换显示的密码,默认为False |
| password_mask |

本文详细介绍Kivy框架中的TextInput组件,包括基本使用方法、常用属性及其设置示例,并演示如何触发不同事件。
最低0.47元/天 解锁文章


被折叠的 条评论
为什么被折叠?



