2011-12-11 4 views
1

Qt를 처음 사용하고 있으며, 현재 trolltech tutorial으로 경기 중입니다. QLCD 번호에 두께를 설정하십시오.

나는 및 배경setPalette 방법을 사용하여 QLCDNumber 색상을 사용자 정의 관리,하지만 난 두께을 변경할 수없는 것. 나는 아무 편지도 없다는 것을 이해한다, 그래서 setFont 방법은 사용될 수 없다, 그래서 나는 setBrush를 시도했다, 그러나 아직도 아무 진행도.

어떻게 든 두께를 설정할 수 있습니까? 그렇지 않은 경우, 이유를 이해하도록 도와주세요. @webclectic가 지적으로 paintEvent을 다시 구현할


편집

는 것이 필요하다. 그러나 drawString을 호출합니다. drawSegmentQLCDNumberPrivate 클래스 (??) see source에 호출하는 drawDigit을 호출합니다. 나는 그것을 재 구현하는 방법을 모른다. 가상의 메소드가 없기 때문에, 그것들을 모두 다시 써야한다. 그렇지? 클래스를 완전히 다시 작성하는 것을 제외하고 다른 방법이 있습니까?

+1

여러분이 할 수있는 최선의 방법은 모든 클래스를 복사하고 이름을 바꾸고 원하는 기능을 추가하는 것입니다. QLcdNumber는 Qt에서 가장 오래된 부분 중 하나이기 때문에 새로운 클래스가 가지고있는 편리한 기능이 많이 부족합니다. – pnezis

답변

2

LCD 번호의 너비가 하드 코드되어 있기 때문에 원하는 것을 얻을 수 있다고 생각하지 않습니다 (이 체크는 thread에 표시).

하나의 해결책은 QLcdNumber을 서브 클래스 화하고 paintEvent을 다시 구현하여 원하는 너비를 지정하는 것입니다.

관련 문제