pyside 또는 pyqt에서 위젯이라는 것은 UI를 구성하는 하나하나의 요소를 뜻한다. 버튼, 라벨, 체크박스 등등이 모두 위젯이다.
오늘은 이러한 위젯 내 글자 크기를 변경하는 방법에 대해 알아보자. 어렵지 않으니 바로 코드를 살펴보자.
from PySide6.QtWidgets import QApplication, QMainWindow, QLabel, QPushButton, QVBoxLayout, QWidget
import sys
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
widget1 = QLabel("hello world")
widget2 = QLabel("hello world")
font = widget2.font()
font.setPointSize(30)
widget2.setFont(font)
widget3 = QPushButton("버튼")
font = widget3.font()
font.setPointSize(50)
widget3.setFont(font)
layout = QVBoxLayout()
layout.addWidget(widget1)
layout.addWidget(widget2)
layout.addWidget(widget3)
container = QWidget()
container.setLayout(layout)
self.setCentralWidget(container)
app = QApplication(sys.argv)
window = MainWindow()
window.show()
app.exec()
위 코드를 실행하면 다음과 같이 세 개의 위젯이 수직으로 정렬되어 있는 창이 하나 뜰 것이다.
첫번째 라벨 위젯보다 두번째 라벨 위젯의 폰트 크기가 큰 것을 확인할 수 있다. 또한 버튼 위젯에 있는 폰트 크기는 두번째 라벨 위젯보다 더 크다.
위 전체 코드에서 폰트 사이즈를 변경해주는 코드는 바로 이 부분이다.
widget2 = QLabel("hello world")
font = widget2.font()
font.setPointSize(30)
widget2.setFont(font)
현재 위젯에 설정되어 있는 폰트 객체를 가지고 와서 새롭게 폰트 사이즈를 지정해준다음에 그것을 해당 위젯에 적용해주는 형식이다.
'코딩 > pyqt, pyside' 카테고리의 다른 글
[pyside6] 창 타이틀바에서 닫기 버튼, 최소화 버튼, 최대화 버튼 등을 비활성화 되게 하려면? (0) | 2022.06.07 |
---|---|
[pyqt5] 야구 중계에 스트라이크 존이 제공되지 않을 때 시청자를 위한 가이드 앱 (2) | 2022.03.16 |
[pyside6] QLabel에 이미지 넣을 때 종횡비(aspect ratio) 설정 (2) | 2022.02.27 |
[pyside6] 위젯 내 글자 크기를 변경하고 싶을 때 (0) | 2022.02.26 |
[pyside6] QThreadPool을 이용해서 몇 개의 스레드가 활성화되어 있는지 확인하기 (0) | 2022.02.25 |
[PySide6] DeprecationWarning: Fuction: 'globalPos() const' is marked as deprecated 경고 메시지 출력 안되게 하기 (0) | 2021.11.29 |
[pyqt5] 프로그램창을 항상 가장 위에 있게 하면서 동시에 타이틀 바도 없게 하려면? (2) | 2021.06.09 |