如何在 python 中将大小设置为 texture_size
how to set size to texture_size in python
所以这是 .kv 代码:
Button:
id:last_message_2
text:''
font_size:18
background_normal:'textures/message.png'
size_hint_x:None
size: self.texture_size
pos_hint:{'right': 1}
padding:(9, 0)
opacity:0
on_release: root.onClick("send_rcnt2")
我想做的是制作一个自定义按钮小部件,如下所示:
class MessageBubble(Button):
def __init__(self, **kwargs):
super(MessageBubble, self).__init__(**kwargs)
self.text = "Hello World"
self.font_size = 18
self.background_normal = "textures/message.png"
self.size_hint_x = None
self.size = self.texture_size
self.pos_hint = {'right': 1}
self.padding = (9, 0)
self.opacity = 0
.kv 文件中只剩下这个:
MessageBubble:
id:last_message_1
on_release: root.onClick("send_rcnt1")
但是当我 运行 代码时,我得到一个非常小的按钮,文本越界
当我调试时,我知道 texture_size
没有动态更新
我现在可以做什么?
MessageBubble的kv规则中需要设置size
,因为self.texture_size变化时需要更新。您也可以通过在 python.
中创建绑定来手动执行此操作
所以这是 .kv 代码:
Button:
id:last_message_2
text:''
font_size:18
background_normal:'textures/message.png'
size_hint_x:None
size: self.texture_size
pos_hint:{'right': 1}
padding:(9, 0)
opacity:0
on_release: root.onClick("send_rcnt2")
我想做的是制作一个自定义按钮小部件,如下所示:
class MessageBubble(Button):
def __init__(self, **kwargs):
super(MessageBubble, self).__init__(**kwargs)
self.text = "Hello World"
self.font_size = 18
self.background_normal = "textures/message.png"
self.size_hint_x = None
self.size = self.texture_size
self.pos_hint = {'right': 1}
self.padding = (9, 0)
self.opacity = 0
.kv 文件中只剩下这个:
MessageBubble:
id:last_message_1
on_release: root.onClick("send_rcnt1")
但是当我 运行 代码时,我得到一个非常小的按钮,文本越界
当我调试时,我知道 texture_size
没有动态更新
我现在可以做什么?
MessageBubble的kv规则中需要设置size
,因为self.texture_size变化时需要更新。您也可以通过在 python.