在Qt中,我们可以使用QGraphicsScene和QGraphicsRectItem类来画矩形并拖动,以下是详细的步骤:
1、创建一个QGraphicsScene对象,这是所有图形项的容器。
2、创建一个QGraphicsRectItem对象,这是我们要画的矩形,我们可以通过设置其位置和大小来定义它。
3、将QGraphicsRectItem添加到QGraphicsScene中。
4、创建一个QGraphicsView对象,这是我们的窗口,我们将在其中显示场景。
5、将QGraphicsScene设置为QGraphicsView的场景。
6、启用QGraphicsView的拖放功能。
7、显示QGraphicsView。
以下是相应的代码:
#include <QApplication> #include <QGraphicsScene> #include <QGraphicsRectItem> #include <QGraphicsView> int main(int argc, char *argv[]) { QApplication a(argc, argv); // 创建一个QGraphicsScene对象 QGraphicsScene scene; // 创建一个QGraphicsRectItem对象 QGraphicsRectItem *rect = new QGraphicsRectItem(); // 设置矩形的位置和大小 rect>setRect(0, 0, 100, 100); // 将矩形添加到场景中 scene.addItem(rect); // 创建一个QGraphicsView对象 QGraphicsView view(&scene); // 启用拖放功能 view.setDragMode(QGraphicsView::RubberBandDrag); // 显示视图 view.show(); return a.exec(); }
在这个代码中,我们首先创建了一个QApplication对象和一个QGraphicsScene对象,我们创建了一个QGraphicsRectItem对象,并设置了它的位置和大小,接着,我们将这个矩形添加到了场景中,我们创建了一个QGraphicsView对象,并将场景设置为它的场景,我们启用了视图的拖放功能,并显示了视图。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/478734.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复