Pyqt5로 GUI 제작 시 모니터 해상도, 배율에 따른 윈도우, 폰트 사이즈 변화 조정
요즘 Lip Color Change GUI를 작성중인데..
사용하는 모니터의 해상도와 배율에 따라서 GUI의 크기가 달라지고 폰트가 짤린다.
예를 들면 화면 배율을 200%(노트북 제조사에서 권장하는 배율) 로 설정 시 아래와 같이 버튼이 짤린다.
따라서 해상도와 배율에 독립적인 GUI를 만들 필요가 있다.
이 문제를 해결하는 방법은 아래와 같다.
맨 위에 import 부분에 다음 코드를 넣어준다. 여러 warning들을 설정해 준다.
from os import environ
def suppress_qt_warnings():
environ["QT_DEVICE_PIXEL_RATIO"] = "0"
environ["QT_AUTO_SCREEN_SCALE_FACTOR"] = "1"
environ["QT_SCREEN_SCALE_FACTORS"] = "1"
environ["QT_SCALE_FACTOR"] = "1"
그 다음 실행 부분에서 해당 메소드를 호출해준다.
if __name__ == "__main__":
import sys
suppress_qt_warnings()
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
그러면 아래와 같이 배율이 200%로 설정되어있더라도 원했던 윈도우 사이즈를 얻을 수 있다.
끝!
'Python' 카테고리의 다른 글
[Python] 윈도우에서 Pyqt5 리소스 파일 (.qrc) 적용 방법 (0) | 2023.06.23 |
---|---|
[Python] 윈도우에서 Anaconda3의 가상환경을 이용해 python 파일을 배치 파일로 만들기 (0) | 2023.06.22 |
[아나콘다] anaconda3 가상환경 삭제 (0) | 2023.03.13 |
[Python] Segmentation 분야에서 클래스 별 레이블이 필요할 때 - Label One-Hot Encoding / python 코드 (1) | 2023.02.02 |
[한국어] OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized. (0) | 2023.01.31 |