2013-10-30 4 views
0

파이썬 클래스 및 kivy 마크 업으로 정의되는 사용자 정의 단추 위젯이 있습니다. font_size 매개 변수가 Button으로 전달되지 않는 한 글꼴을 기본 크기 (예 : '50sp')로 설정하고 싶습니다.이 경우 글꼴 크기는 전달 된 값이어야합니다. 다음과 같이 코드는 다음과 같습니다kivy 언어로 조건부 글꼴 크기를 설정 하시겠습니까?

파이썬 :

class Custom_Button(Button): 
    ... 

kivy :

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

문제는 그것이 결코 '50sp'절에 도달 없다는 것입니다. font_size 매개 변수가 만들어 질 때 Button 객체의 인스턴스로 전달되지 않으면 kivy의 기본 글꼴 크기가 활용됩니다. 이 행동의 원인과 무엇을해야하는지에 대한 제안? 고맙습니다.

답변

1

왜 self.font_size를 50sp로 설정하지 않습니까? 사용자가 무언가를 제공하지 않는다면 그것은 항상 기본값입니다.

<Custom_Button>: 
    font_size: sp(50) 
+0

감사합니다, 궂은을 : 당신은 또한 KV 언어에서이 작업을 수행 할 수

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

, 나는 사용자 제공 값은 여전히 ​​여기에 제공하는 모든 기본값을 재정의 할 것입니다 생각합니다. 그것이 내가 성취하려고 시도한 것입니다. 내 원래의 질문은 응용 프로그램의 동작을 잘못 해석 한 것입니다. 긴 하루의 코딩 ... –

관련 문제