【问题标题】:Setting conditional font size in kivy language?在kivy语言中设置条件字体大小?
【发布时间】:2013-10-30 19:31:10
【问题描述】:

我有一个自定义按钮小部件,它被定义为 python 类和 kivy 标记。我希望将字体设置为默认大小(比如说'50sp'),除非将font_size 参数传递给按钮,在这种情况下,字体大小应该是传递的任何值。代码如下:

蟒蛇:

class Custom_Button(Button):
    ...

基维:

<Custom_Button>:
    ...
    font_size = self.font_size if self.font_size else '50sp'

问题是它永远不会到达“50sp”子句。如果在创建 Button 对象时没有将 font_size 参数传递给它的实例,则将使用 kivy 的默认字体大小。知道是什么原因导致了这种行为以及如何做的建议吗?谢谢。

【问题讨论】:

    标签: kivy


    【解决方案1】:

    为什么不把 self.font_size 设置为 50sp?这样它总是默认的,除非用户提供了一些东西。

    class Custom_Button(Button):
        font_size = NumericProperty('50sp')
    

    您也可以使用 kv 语言执行此操作,我认为用户提供的值仍会覆盖您在此处提供的任何默认值:

    <Custom_Button>:
        font_size: sp(50)
    

    【讨论】:

    • 谢谢,不客气。这就是我想要完成的。看来我最初的问题是基于对应用程序行为的误解。漫长的一天编码......
    猜你喜欢
    • 2013-10-03
    • 1970-01-01
    • 2016-04-22
    • 1970-01-01
    • 1970-01-01
    • 2021-06-13
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    相关资源
    最近更新 更多