gpt4 book ai didi

python - Valign 不在 kivy 工作?

转载 作者:行者123 更新时间:2023-12-04 01:28:49 24 4
gpt4 key购买 nike

我这里有这个 kivy 文件:

<Help>:
Label:
text: "[b]Help Page[/b]\n"
font_size: 30
markup: True
valign: "top"
color: 0,0,0,1
Label:
text: "[b] How To Use:[/b]\n"
font_size: 30
markup: True
valign: 'top'
color: 0,0,0,1

但是,文本不会到达页面顶部。这是输出:

Output

这有什么问题吗?我也可以问一下如何格式化那些重叠的文本。谢谢:)

编辑:这就是我想要的文本:

期望的输出

因此,为了获得该结果,我尝试使用 valign 和 halign 来格式化文本,但它似乎不起作用。希望这澄清了我的问题:)

最佳答案

在顶部显示文本

要使用 valign: 'top' 在顶部显示文本,请将 text_size: root.width, None 替换为 text_size: root.width, root.height

片段

<Help>:
Label:
id: help
text_size: root.width, root.height
markup: True
valign: 'top'
halign: 'center'
color: 0,0,0,1

输出

Img01 - Text at top

将两个字符串显示为一个

要同时显示“How to Operate: Some text here”和“Some title Some more text”两个字符串,我们将执行以下操作: p>

kv文件

<Help>:
Label:
id: help
text_size: root.width, None
markup: True
halign: 'center'
color: 0,0,0,1

Python代码

class Help(Screen):

def on_pre_enter(self, *args):
self.ids.help.text = "[size=30][b]How to Operate[/b][/size]\nSome text here" + \
"\n\n[size=30][b]Some title[/b][/size]\nSome more text"

输出 - 组合文本

Img01 - Combined Text

文字重叠

Label 的文本重叠,因为您在屏幕布局中将两个 Label 小部件叠加在一起。

添加一个 BoxLayout 作为两个 Label 小部件的父级以防止文本重叠。

文字环绕

以一定宽度包裹文本,提供宽度。例如,要在 width=200 和 unlimited height 的框中创建一个 Label。

Label(text='Very big big line', text_size=(200, None))

片段

<Help>:
BoxLayout:
orientation: 'vertical'

Label:
text_size: dp(230), None
height: self.texture_size[1]
text: "[size=30][b]How to Operate[/b][/size]Some text here"
markup: True
valign: "top"
halign: 'center'
color: 0,0,0,1

Label:
text_size: dp(150), None
text: "[size=30][b]Some title[/b][/size]Some more text"
markup: True
valign: 'top'
halign: 'center'
color: 0,0,0,1

输出

Img01

文本对齐

添加text_size: self.size

片段

<Help>:
Label:
text_size: self.size
text: "[b]Help Page[/b]\n"
font_size: 30
markup: True
valign: "top"
color: 0,0,0,1
Label:
text_size: self.size
text: "[b] How To Use:[/b]\n"
font_size: 30
markup: True
valign: 'top'
color: 0,0,0,1

Text alignment and wrapping

In order for the halign and valign alignment properties to take effect, set the text_size, which specifies the size of the bounding box within which text is aligned.

输出

Img02

关于python - Valign 不在 kivy 工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52048698/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com