0
質問PyQT: Rotate a QLabel so that it's positioned diagonally instead of horizontallyに、彼らはビルドにQPainter
の方法を使用してポリゴンを回転さ:pyqt4でQGraphicsSceneでポリゴンを回転させる方法は?
from PyQt4 import QtGui, QtCore
class MyFrame(QtGui.QGraphicsView):
"""
Python PyQt: How can I move my widgets on the window with mouse?
https://stackoverflow.com/questions/12213391
"""
def __init__(self, parent = None):
super(MyFrame, self).__init__(parent)
scene = QtGui.QGraphicsScene()
self.setScene(scene)
self.resize(400, 240)
# http://pyqt.sourceforge.net/Docs/PyQt4/qpen.html
pencil = QtGui.QPen(QtCore.Qt.black, 2)
pencil.setStyle(QtCore.Qt.SolidLine)
polygon = QtGui.QPolygonF([QtCore.QPointF(250, 100), \
QtCore.QPointF(400, 250), QtCore.QPointF(200, 150) ])
brush = QtGui.QBrush(QtGui.QColor(125, 125, 125, 125))
scene.addPolygon(polygon, pencil, brush)
if (__name__ == '__main__'):
app = QtGui.QApplication([])
f = MyFrame()
f.show()
app.exec_()
:
class MyLabel(QtGui.QWidget):
def paintEvent(self, event):
painter = QtGui.QPainter(self)
painter.setPen(QtCore.Qt.black)
painter.translate(20, 100)
painter.rotate(-90)
painter.drawText(0, 0, "hellos")
painter.end()
しかし私のコードで私が持っているように見えるQGraphicsScene
内だが、これを持っていますこのシナリオでは、QGraphicsScene
を使用して他の質問のように呼び出すことはできますか?
polygon.translate(20, 100)
polygon.rotate(-90)