파이썬(Python)/PySide

[Python] PySide 라벨 위치, 폰트, 글자 크기(Pont, Size, Type)

끄적끄적아무거나 2022. 12. 5. 09:07
반응형

 

목차

     

     

     

     

    파이썬 PySide 라벨 위치, 폰트, 글자 크기

    이번 포스트에서는 파이썬의 PySide에서 라벨을 생성하고 라벨의 위치를 조정하는 방법과 폰트를 설정하는 방법과 폰트 사이지를 변경하는 방법에 대해 알아보겠습니다. 

     

    간단한 예제로 확인해보겠습니다. 아래 예제는 라벨에 텍스트를 입력하고 텍스트를 왼쪽 상단에 배치하고 폰트는 이탈리안으로 설정하고 크기는 11로 설정하였습니다.

     

     

    예제 코드>>

    from PySide6.QtWidgets import QMainWindow, QApplication,QLabel
    from PySide6.QtCore import Qt, QSize
    import sys
    
    class Qt_Ex(QMainWindow):
        def __init__(self):
            super().__init__()
    
            self.setWindowTitle("Qt Example")
            self.setFixedSize(QSize(250, 100))
    
            widget = QLabel("Hello")
            font = widget.font()
            font.setPointSize(11)
            font.setItalic(True)
            widget.setFont(font)
            widget.setAlignment(Qt.AlignLeft or Qt.AlignTop)
    
            self.setCentralWidget(widget)
    
    app = QApplication(sys.argv)
    w = Qt_Ex()
    w.show()
    app.exec()

     

     

     

     

    결과>>

     

     

     

     

    주석>>

     

    font = widget.font()

    font 객체를 만듭니다.

     

     

    font.setPointSize(11)

    폰트 사이즈를 11로 설정하였습니다.

     

     

     

    font.setItalic(True)

    글자는 이탈리안체로 설정하였습니다. 입력 값으로 True를 설정해야 이탈리안체가 적용됩니다.

     

     

     

    widget.setAlignment(Qt.AlignLeft or Qt.AlignTop)

    라벨의 위치를 설정합니다. 위치 설정은 or로 구성할수 있습니다. 수평과 수직 각 각을 설정이 가능 합니다.

     

     

    • 수평 위치 설정

    Qt.AlignLeft : 왼편 배치
    Qt.AlignRight : 오른편 배치
    Qt.AlignHCenter : 가운데 배치
    Qt.AlignJustify : 사용자 배치

     

     

    • 수직 위치 설정

    Qt.AlignTop : 위쪽 배치
    Qt.AlignBottom : 바닦 배치
    Qt.AlignVCenter : 가운데 배치

     

     

     

    그 외 다양한 폰트 설정은 아래와 같습니다. 설정 문구만으로 볼드체를 하는 지 등 설정을 이해하는데는 문제가 없지만 혹시 상세 내용을 확인하고 싶은 분은 링크를 참조하시길 바랍니다.(https://srinikom.github.io/pyside-docs/PySide/QtGui/QFont.html#PySide.QtGui.PySide.QtGui.QFont.setBold)

     

    def __eq__ (arg__1)
    def __lt__ (arg__1)
    def __ne__ (arg__1)
    def bold ()
    def capitalization ()
    def defaultFamily ()
    def exactMatch ()
    def family ()
    def fixedPitch ()
    def fromString (arg__1)
    def handle ()
    def isCopyOf (arg__1)
    def italic ()
    def kerning ()
    def key ()
    def lastResortFamily ()
    def lastResortFont ()
    def letterSpacing ()
    def letterSpacingType ()
    def overline ()
    def pixelSize ()
    def pointSize ()
    def pointSizeF ()
    def rawMode ()
    def rawName ()
    def resolve ()
    def resolve (arg__1)
    def resolve (mask)
    def setBold (arg__1)
    def setCapitalization (arg__1)
    def setFamily (arg__1)
    def setFixedPitch (arg__1)
    def setItalic (b)
    def setKerning (arg__1)
    def setLetterSpacing (type, spacing)
    def setOverline (arg__1)
    def setPixelSize (arg__1)
    def setPointSize (arg__1)
    def setPointSizeF (arg__1)
    def setRawMode (arg__1)
    def setRawName (arg__1)
    def setStretch (arg__1)
    def setStrikeOut (arg__1)
    def setStyle (style)
    def setStyleHint (arg__1[, strategy=PreferDefault])
    def setStyleStrategy (s)
    def setUnderline (arg__1)
    def setWeight (arg__1)
    def setWordSpacing (spacing)
    def stretch ()
    def strikeOut ()
    def style ()
    def styleHint ()
    def styleStrategy ()
    def toString ()
    def underline ()
    def weight ()
    def wordSpacing ()
    def x11Screen ()
    def x11SetScreen ([screen=-1])

     

     

     

    반응형