やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

QPainterで矩形を描画する

 PySide2のQPainterで半透明の四角形を。

成果物

demo

コード

main.py

from PySide2 import QtCore, QtGui, QtWidgets 
import sys 
class Painter(QtWidgets.QWidget):
    def paintEvent(self, event):
        painter = QtGui.QPainter(self)
        painter.begin(self)
         
        painter.setBrush(QtCore.Qt.lightGray)
        painter.setPen(QtCore.Qt.NoPen)
        painter.drawRect(self.rect())
         
        painter.setBrush(QtGui.QColor(255, 0, 0, 85))
        painter.drawRect(10, 10, 80, 80)
         
        painter.setBrush(QtGui.QColor(0, 255, 0, 85))
        painter.drawRect(30, 30, 80, 80)
         
application = QtWidgets.QApplication(sys.argv)
window = Painter()
window.setWindowFlags(QtCore.Qt.Window)
window.resize(160,120)
window.show()
sys.exit(application.exec_())
python3 main.py

demo

所感

 このQPainterを使えば他にも基本図形や文字が書けるっぽい。

 というか、PySDL2よりPySide2のほうがAPIもDocumentも豊富だな。ゲームもPySide2で書けるのでは?

対象環境

$ uname -a
Linux raspberrypi 4.19.97-v7l+ #1294 SMP Thu Jan 30 13:21:14 GMT 2020 armv7l GNU/Linux