Как установить (0,0) в верхний левый угол QGraphicsScene - PullRequest
1 голос
/ 24 марта 2020

Можно ли установить (0,0) в верхнем левом углу QGraphicsScene? По умолчанию он находится в центре представления:

class GraphicsScene : public QGraphicsScene
{
protected:
    void mouseMoveEvent(QGraphicsSceneMouseEvent *event) override
    {
        // here you can see that (0,0) is at the center of the view
        qDebug() << "movement " << event->scenePos();
    }
};

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    GraphicsScene* scene = new GraphicsScene;
    QGraphicsView* view = new QGraphicsView(scene);

    setCentralWidget(view);
}

1 Ответ

1 голос
/ 24 марта 2020

Вы должны установить alignment в QGraphicsView:

QGraphicsView* view = new QGraphicsView(scene);
view->setAlignment(Qt::AlignTop | Qt::AlignLeft);
...