bgturk
23rd April 2009, 11:03
Hello,
I am using PyQt4 to visualize a fish that changes its shape:
def main():
app = QtGui.QApplication(sys.argv)
scene = QtGui.QGraphicsScene()
scene.setSceneRect( -2.0, -2.0, 4.0, 4.0)
fish = Fish()
fish.setPos(0.0, 0.0)
scene.addItem(fish)
view = QtGui.QGraphicsView(scene)
view.setRenderHint(QtGui.QPainter.Antialiasing)
view.scale(150,150)
view.show()
view.raise_()
sys.exit(app.exec_())
So far so good. This code works as expected. It opens up a window, with the fish in it.
Now I would like to simulate several fish, each placed in their own separate main window.
So the first step I did was to define a MainWindow class as follows:
class MainWindow(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
scene = QtGui.QGraphicsScene()
scene.setSceneRect( -2.0, -2.0, 4.0, 4.0)
fish = Fish()
fish.setPos(0, 0)
scene.addItem(fish)
view = QtGui.QGraphicsView(scene)
view.setRenderHint(QtGui.QPainter.Antialiasing)
view.scale(150,150)
self.setCentralWidget(view)
def main():
app = QtGui.QApplication(sys.argv)
win = MainWindow()
win.show()
win.raise_()
sys.exit(app.exec_())
but for some reason this just displays an empty window with no view in it. What am I doing wrong?
I am using PyQt4 to visualize a fish that changes its shape:
def main():
app = QtGui.QApplication(sys.argv)
scene = QtGui.QGraphicsScene()
scene.setSceneRect( -2.0, -2.0, 4.0, 4.0)
fish = Fish()
fish.setPos(0.0, 0.0)
scene.addItem(fish)
view = QtGui.QGraphicsView(scene)
view.setRenderHint(QtGui.QPainter.Antialiasing)
view.scale(150,150)
view.show()
view.raise_()
sys.exit(app.exec_())
So far so good. This code works as expected. It opens up a window, with the fish in it.
Now I would like to simulate several fish, each placed in their own separate main window.
So the first step I did was to define a MainWindow class as follows:
class MainWindow(QtGui.QMainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
scene = QtGui.QGraphicsScene()
scene.setSceneRect( -2.0, -2.0, 4.0, 4.0)
fish = Fish()
fish.setPos(0, 0)
scene.addItem(fish)
view = QtGui.QGraphicsView(scene)
view.setRenderHint(QtGui.QPainter.Antialiasing)
view.scale(150,150)
self.setCentralWidget(view)
def main():
app = QtGui.QApplication(sys.argv)
win = MainWindow()
win.show()
win.raise_()
sys.exit(app.exec_())
but for some reason this just displays an empty window with no view in it. What am I doing wrong?