Pythonで画像を表示する、再び

Pythonで今度は別の方法で画像を表示させた。PyQtっていうGUIを使ってるよ。

前は、QGraphicsViewやQGraphicsSceneなどを使って表示させていたけど、
今回はQImageで画像を読み込んでQPainterを使って描画しました。

以下はソース
import sys
from PyQt4 import QtGui, QtCore, uic
from Foo import Ui_MainWindow

class Sample(QtGui.QMainWindow): 
    def __init__(self, parent = None):
        super(Sample, self).__init__(parent)
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)

    def paintEvent(self,event):
        painter = QtGui.QPainter()
        painter.begin(self)
        painter.setPen(QtGui.QColor('#FFFFFF'))
        painter.setBrush(QtCore.Qt.white)
        painter.drawRect(event.rect())

        image = QtGui.QImage('./sample01.jpg')
        x = (self.width() - image.width()) / 2
        y = (self.height() - image.height()) / 2

        painter.drawImage(x,y,image)
        painter.end()

if __name__ == '__main__':
    app = QtGui.QApplication(sys.argv)
    sample = Sample()
    sample.show()
    sys.exit(app.exec_())
実行されたアプリケーション
27