python - 有没有办法制作标签,在kivy中与另一个标签产生特定距离
问题描述
我正在创建一个聊天机器人,我刚刚进入前端。我使用只读文本输入作为输入并单击发送后出现在屏幕上的文本,我无法找到创建标签的方法,在已经完成的标签下方,目前文本只是与我之前输入并单击发送的文本重叠,我在下面创建它,请帮助
Python代码
from kivy.app import App
from kivy.uix.textinput import TextInput
from kivy.uix.floatlayout import FloatLayout
from kivy.properties import ObjectProperty
from kivy.uix.label import Label
from kivy.uix.widget import Widget
import re
import time
class MyFL(FloatLayout):
global input
input = ObjectProperty(None)
global button
button = ObjectProperty(None)
def btn(self):
a = 0.95
while len(self.input.text) > 0:
self.add_widget(MyTextInput(text='> ' + self.input.text, pos_hint={'y':a}))
a = a - 0.05
self.input.text = ""
class MyTextInput(TextInput):
pass
class MyApp(App):
def build(self):
return MyFL()
if __name__ == "__main__":
MyApp().run()
.kv 文件
<FloatLayout>:
input:input
button:button
TextInput:
id: input
multiline: False
hint_text: "Say Something"
size_hint: 1, 0.05
font_size: 20
Button:
id:button
size_hint: 0.05, 0.05
pos_hint: {'center_x': 0.5, 'y': 0.06 }
on_press: root.btn()
<MyTextInput>:
size_hint: 1, None
height: self.minimum_height
readonly: True
multiline:True
解决方案
推荐阅读
- node.js - 在 Synology Nas 上运行的 Node JS、访问 ssh Windows Powershell、端口转发、永久运行 app.js 的 Linux upstart (.conf) 脚本
- java - Spring Boot + Angular - MultipartException:当前请求不是多部分请求
- angular - 用于动态路由内部的参数
- debugging - 立即窗口 VIsual studio 调试 undefined
- javascript - 如何从 javascript 函数中返回变量以及 promise?
- javascript - 我想将 onclick 功能分配给这样的按钮,但它不起作用,为什么?
- javascript - WebSocket 聊天应用程序。从本地主机到我的域
- react-native - 如何解决这个 firebase 模块版本控制错误?
- reactjs - 将组件路由到 ReactJS 中的另一个组件后,如何取消渲染组件?
- java - 将 arraylist 拆分为单独的数组,其中包含来自导入数据的单个元素