私がやりたいのは、「hello world」を a の a に書き込むことだけQGraphicsScene
ですQGraphicsView
。私は何を間違っていますか?QGraphicsView
Designer でを作成し、次に で__init__
を作成しQGraphicsScene
てそれにテキストを追加しましたが、黒いウィンドウしか表示されません。
import sys
from PySide import QtCore, QtGui
from PySide.QtGui import *
class MyDialog(QDialog):
def __init__(self):
super(MyDialog, self).__init__()
self.ui = Ui_Dialog()
self.ui.setupUi(self)
self.scene = QGraphicsScene()
self.ui.graphicsView.setScene(self.scene)
self.scene.setSceneRect(0,0,100,100)
self.scene.addText('hello')
def main(argv):
app = QApplication(sys.argv)
myapp = MyDialog()
myapp.show()
app.exec_()
sys.exit()
if __name__ == "__main__":
main(sys.argv)
以下は、デザイナーの UI コードです。
# everything from here down was created by Designer
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(400, 300)
self.buttonBox = QtGui.QDialogButtonBox(Dialog)
self.buttonBox.setGeometry(QtCore.QRect(30, 240, 341, 32))
self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
self.buttonBox.setObjectName("buttonBox")
self.graphicsView = QtGui.QGraphicsView(Dialog)
self.graphicsView.setGeometry(QtCore.QRect(50, 30, 256, 192))
self.graphicsView.setMouseTracking(False)
self.graphicsView.setFrameShadow(QtGui.QFrame.Sunken)
brush = QtGui.QBrush(QtGui.QColor(0, 0, 0))
brush.setStyle(QtCore.Qt.SolidPattern)
self.graphicsView.setForegroundBrush(brush)
self.graphicsView.setObjectName("graphicsView")
self.retranslateUi(Dialog)
QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL("accepted()"), Dialog.accept)
QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL("rejected()"), Dialog.reject)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "Dialog", None, QtGui.QApplication.UnicodeUTF8))
私が得るのは、空白の黒いキャンバスで、これだけです: