如何使用鼠标重新调整QGraphicItem的大小

时间:2017-10-21 14:44:53

标签: c++ qt resizable

我这个代码创建了矩形sizeof(200x100)和ellipse sizeof(100,200)但现在我需要使用mouse更改矩形和椭圆的大小。我可以这样做。

#include "widget.h"
#include "ui_widget.h"
#include "readsvg.h"

#include <QCursor>
#include <QFileDialog>

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);
    scene = new QGraphicsScene(this);
    ui->graphicsView->setScene(scene);

    QBrush redBrush(Qt::red);
    QBrush blueBrush(Qt::blue);
    QPen blackPen(Qt::black);
    blackPen.setWidth(6);

    elipse = scene->addEllipse(20,20,100,100,blackPen,redBrush);
    elipse->setFlag(QGraphicsItem::ItemIsMovable, true);

    rect = scene->addRect(-20,-10,200,100,blackPen,blueBrush);
    rect->setFlag(QGraphicsItem::ItemIsMovable, true);
    rect->setFlag(QGraphicsItem::ItemIsSelectable,true);

}

Widget::~Widget()
{
    delete ui;
}

这是我的预期结果。

enter image description here

或者

enter image description here

0 个答案:

没有答案