2012-10-14 6 views
1

나는 단순히 시스템 트레이에 현재 시간을 표시하는 디지털 시계를 만들고 싶습니다.PyQt 또는 PySide를 사용하여 시스템 트레이에 아이콘 대신 텍스트를 표시하는 방법은 무엇입니까?

QPainter를 사용하여 아이콘을 그리고 QSystemTrayIcon 개체로 설정할 수 있지만 아이콘의 크기는 항상 22x22 픽셀입니다.

어떻게하면됩니까? PyGTK가 단순히 트레이 아이콘 객체에 레이블을 추가 할 수 있다는 것을 알고 있습니다. PyQT/PySide의 솔루션은 무엇입니까?

답변

1

이, 당신이 X11 기반 시스템에서 응용 프로그램을 실행하는 것으로 가정합니다 "아이콘이 22x22 픽셀로 크기가 조정되었다"(우분투 나 다른 리눅스 배포판.) QSystemTrayIcon doc에서

, 그것은 당신의 아이콘 크기가 변경 될 것이라고 말한다 OS에 따라 다음을 사용하십시오.

Windows에서 시스템 트레이 아이콘 크기는 16x16입니다. X11에서 기본 크기는 22x22입니다.

  1. 는 QPainter를 두 개의 22x22 시스템 트레이 아이콘을 만들기 : 아이콘이

당신은 여전히하여이를 해결할 수 있습니다 필요에 따라 적절한 크기로 조정됩니다 시간 동안 하나, 또 다른 분

  • 시스템 트레이 아이콘 두 개 표시 (왼쪽에 시간, 오른쪽에 분)
  • 이 해결 방법은 잘못된 순서로 아이콘이 표시 될 수 있기 때문에 오류가 발생하기 쉽습니다. X11이 유일한 대상 플랫폼이라면 pygtk를 사용하는 것이 좋습니다.

    +0

    그것은 끔찍한 일입니다. 그런 강력한 프레임 워크는 그렇게 쉬운 일이 아니라는 것을 이해하기 어렵습니다! – 0x3f

    +0

    Qt는 UI 프레임 워크를 이식성 있고 일관된 OS로 유지하기 위해 Qt에 이러한 제한이 있다고 생각합니다. – nattster