본문 바로가기
Python/Pyside6

[Python/PySide6] QMessageBox 폰트 크기 변경 방법

by jiyoon_92 2022. 10. 19.
반응형

메시지박스 폰트 크기 변경 방법

pyside6

 

커스텀 MessageBox를 만들어서 메시지 내용을 표시하는 내부에 있는 label을 받아와 QFont를 설정해주는 방법이 있다. 

"qt_msgbox_label"로 findchild를 해서 Label을 받아온 뒤에 QFont를 새로 생성한다. fontsize는 원하는 값으로 설정해 준 뒤 setFont() 함수로 설정된 폰트를 저장해준다. 

가운데 정렬을 하고 싶으면 label.setAlignment()를 Qt.AlignCenter로 설정하게되면 가운데 정렬이 가능하다. 또한 글의 줄간격도 설정해 줄 수 있는데 이건 stylesheet을 css 스타일로 변경하는 방법이 있다.

Label의 line-height를 css방식으로 작성한 후 setStyleSheet() 함수로 스타일을 변경해주면 끝이다.

class MessageBox(QMessageBox) :
    def __init__(self, parent) :
        super().__init__(parent=parent)
        self.initUI()
    
    def initUI(self) :
        self.lblText = self.findChild(QLabel, "qt_msgbox_label")
        font = QFont()
        font.setPixelSize(13)
        self.lblText.setFont(font)
        self.lblText.setAlignment(Qt.AlignCenter)
        self.lblText.setStyleSheet("#QLabel { line-height: 1.25em; }");
        self.layout().setContentsMargins(10, 10, 10, 10)
    def updateGeometry(self) :
        self.lblText.adjustSize()
반응형

 


변경 전
변경 후

반응형

댓글