Time for action – putting it all together!
Before we go on, however, and after talking a lot about items and scenes, let's see how the view, the scene, and the items all work together:
#include <QApplication> #include <QGraphicsView> #include <QGraphicsRectItem> int main(int argc, char *argv[]) { QApplication app(argc, argv); QGraphicsScene scene; scene.addEllipse(QRectF(0, 0, 100, 100), QColor(0, 0, 0)); scene.addLine(0, 50, 100, 50, QColor(0, 0, 255)); QGraphicsRectItem *item = scene.addRect(0, 0, 25, 25, Qt::NoPen, Qt::red); item->setPos(scene.sceneRect().center() - item->rect().center()); QGraphicsView view; view.setScene(&scene); view.show(); return app.exec(); }
Build and run this example and you will see following image in the middle of the view:
What just happened?
What have we done here? On top, we included the needed headers and then wrote a normal main function and created a QApplication
elment. Its event loop is started in the return...