在Python Code Kivy中将文本大小更改为按钮大小更改

时间:2020-07-02 03:34:35

标签: python kivy dropdown kivy-language

我是Kivy的初学者,目前在Kivy中使用Dropdowns。这是我在该DropDown中的代码:

 def __init__(self, **kwargs):
    super(MixedInput, self).__init__(**kwargs)
    self.dropdown_1 = DropDown()
    self.dropdown_1.max_height = 350
    for btn_1_index in substance_list:
        self.btn_1 = Button(text=str(btn_1_index), size_hint_y=None, height=44)
        self.btn_1.bind(on_release=lambda btn: self.dropdown_1.select(btn.text))
        self.btn_1.bind(on_release=lambda btn: self.set_up(btn.text))
        self.dropdown_1.add_widget(self.btn_1)
    self.mainbutton_1 = Button(text='Compound 1: Choose one from the list', size_hint=(0.5, 0.1), pos_hint={"x": 0, "y": 0.9}, font_size= 20)
    self.mainbutton_1.bind(on_release=self.dropdown_1.open)
    self.dropdown_1.bind(on_select=lambda instance, a: setattr(self.mainbutton_1, 'text', "Compound 1: " + a))
    self.add_widget(self.mainbutton_1)

因此,如果我想在调整窗口大小时更改mainbutton_1的字体大小,该怎么办?我知道我不能简单地像在kv文件中那样写:

font_size: self.width

有什么办法可以在我的Python代码上实现此目的,而不必进入kv文件吗?谢谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您必须禁用size_hinit !,以使其形象化,我将更改按钮的字体:

Button:
text: "hello word"
font_size: 20
on_release: app.root.current = "other"
size: 20, 40
size_hint: None, None