🍊

003 QPen (점 넣기)

1. 코드

import sys from PyQt5.QtWidgets import QApplication, QWidget from PyQt5.QtGui import QPainter, QColor, QFont, QPen from PyQt5.QtCore import Qt import random class 점넣기(QWidget): def __init__(self): super().__init__() self.UI초기화() def UI초기화(self): self.setGeometry(300, 300, 500, 500) self.setWindowTitle('QPainter!') self.show() def paintEvent(self, event): paint = QPainter() paint.begin(self) self.drawRandomPoint(paint) paint.end() def drawRandomPoint(self, paint): pen = QPen() colors = [Qt.red, Qt.blue, Qt.green] size = self.size() print(f'높이와 넓이 : {size.height()}, {size.width()}') for _ in range(1000): pen.setColor(QColor(random.choice(colors))) pen.setWidth(random.randint(1, 20)) paint.setPen(pen) x = random.randint(1, size.width() - 1) y = random.randint(1, size.height() - 1) paint.drawPoint(x, y) 프로그램무한반복 = QApplication(sys.argv) 실행인스턴스 = 점넣기() 프로그램무한반복.exec_()
 

2. 상세 내용

점도 결국에는 팬으로 그리게 됩니다. PyQt에서 점은 넓이와 높이가 있는 선입니다.
  • QPainter : 그림판 같은 역할을 하는 모듈입니다.
  • QColor : Color와 관련된 모듈입니다. 0부터 255 값으로 된 RGB 값으로 줄 수도 있고, color name으로도 줄 수 있으며, hex값으로도 줄 수 있습니다. color에 대한 기본적인 개념을 잡고 싶으신 분은 아래 문서를 참고하세요.
  • QFont : 폰트와 같은 설정을 할 수 있습니다. 굵기와 폰트 스타일 등을 지정할 수 있습니다. 상세 설정은 공식문서를 참고바랍니다.
  • QPen : 그림판의 펜과 같은 역할을 합니다.

3. 실행 화면

 
notion imagenotion image