У меня проблема с прокруткой в QGraphicsView.
Я установил прямоугольник сцены в своем подклассе QGraphicsView:
MyQGraphicsView::MyQGraphicsView{
setSceneRect(0,0,2000,2000)
}
И перегрузил paintEvent:
void MyQGraphicsView::paintEvent(QPaintEvent *event){
qDebug()<<"Paint event";
QPainter painter(viewport());
painter.setRenderHint(QPainter::Antialiasing);
paint(painter);
}
void MyQGraphicsView::paint(QPainter &painter){
painter.setPen(Qt::NoPen);
painter.fillRect(QRect(0,0,200,200),Qt::gray);
painter.fillRect(QRect(500,500,1000,100),Qt::green);
painter.setPen(QPen(Qt::white,4,Qt::DashLine));
painter.drawLine(QLine(0,35,200,35));
painter.drawLine(QLine(0,165,200,165));
}
При прокрутке второй прямоугольник не виден. Когда я изменяю размер окна, это так. Также при прокрутке прямоугольник расширяется проводным способом.
Как реализовать прокрутку в этом случае? Я нашел несколько тем о прокрутке в QGraphicsView, но ни одна из них не решает мою проблему.