所以这是.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不是动态更新的
我现在能做什么?
发布于 2021-02-06 23:14:53
您需要在MessageBubble的kv规则中设置size,因为它需要在以后self.texture_size更改时更新。您也可以通过在python中创建绑定来手动完成此操作。
https://stackoverflow.com/questions/66078105
复制相似问题