You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kivy技术问题:TextInput光标为何默认显示为红色?

Kivy TextInput光标默认红色的解决办法

原因

TextInput的光标颜色默认继承自Kivy应用主题的强调色,部分系统环境下会匹配系统主题的高亮色,因此会出现红色光标。

改色方法

直接在Python代码中设置

通过cursor_color属性可直接指定光标颜色,支持RGBA元组、十六进制字符串或颜色名称。

修改后的代码示例:

import kivy
kivy.require('2.1.0')

from kivy.app import App
from kivy.uix.textinput import TextInput

class MyApp(App):
    def build(self):
        # 设置光标为黑色,可替换为任意需要的颜色
        return TextInput(text='Hello world', cursor_color=(0, 0, 0, 1))

if __name__ == '__main__':
    MyApp().run()

用KV语言全局配置(适合多组件场景)

如果项目使用KV语言管理界面,添加全局TextInput规则就能统一修改所有输入框的光标颜色:

<TextInput>:
    cursor_color: '#000000'  # 十六进制黑色,也可使用(0,0,0,1)或'black'

注意点

  • RGBA格式的颜色值范围为0到1,最后一位代表透明度(1为完全不透明)。
  • 若仅需修改单个输入框的光标颜色,在对应TextInput实例中单独设置cursor_color即可。

内容的提问来源于stack exchange,提问作者Sean Bannister

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 08:47:17