python 3.4, qt 4.8 및 pyqt 4.11을 사용하여 QtGui.QLabel에 아래 첨자를 표시하고 싶습니다. 나는 아래의 코드 샘플에서 정수를 받아 문자열 첨자 즉qlabel에서 첨자 문자를 표시하는 방법
_subscripter(13)
Out[8]: '₁₃'
내가 레이블을 원하는 그냥 첨자를 보여 반환하는 함수 _subscripter
이 '₁₃', 그러나 그것은 (아래 이미지 참조) 것을 인식하지 못합니다. 어떤 도움을 주셔서 감사합니다. 작동해야 chr
대신에 QChar
를 사용
from PyQt4 import QtGui
from sys import argv, exit
def _subscripter(n):
digits = len(str(n))
s = ''
for i in range(digits):
s += chr(0x2080 + int(str(n)[i]))
return s
def start_app():
app = QtGui.QApplication(argv)
window = QtGui.QLabel(_subscripter(13))
window.show()
window.activateWindow()
exit(app.exec_())
if __name__ == '__main__': start_app()
이 보이는 할 수있는 ...''QtCore.QChar''이 속성 오류가 발생합니다 .. 아마 문제를 함께 할 수있는 뭔가가 우선 첫째로? 나는 파이썬 3.4로 생각했다.''QChar''와''QString''은 필요하지 않다. – asdf
내 시스템에 파이썬 3을 설치하지 않았기 때문에 아마도 파이썬 2.7로 테스트했을 것이다. 2.7에서는 작업을 끝내기 위해'unichr'을 사용할 수도 있습니다. 파이썬 3에서'chr'은 똑같은 일을하기로되어 있는데, 왜 작동하지 않는지 모르겠습니다. – user3419537
@ user3419537. 기본적으로 PyQt4는 Python 3이 아닌 Python 2 용'QString'과'QChar' 클래스만을 제공합니다. 후자의 경우, 이들 클래스는 자동으로 파이썬 문자열 객체에 매핑됩니다. – ekhumoro