Im writing some simple python application using PyQt and QtDesigner. I've designed mainView in designer which has a QGraphicsView and some buttons inside. My question is, how should I draw shapes on that QGraphicsView?

Without QtDesigner, I would have created class extending QGraphicsView and overriden its paintEvent() method. However, Designer generates single Ui_MainWindow class, so I can't set it's QGraphicsView field to my specific subclass.

有帮助吗?

解决方案

You'll want to promote the QGraphicsView to your own class that subclasses QGraphicsView. To learn how to promote widgtes in Qt Designer, see this SO post: How do I use promote to in Qt Designer in pyqt4?

In your subclass, you can override the paintEvent method is usual.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top