QGraphicsView でのスクロールに問題があります。
QGraphicsView サブクラスでシーン rect を設定しました。
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));
}
スクロールすると、2 番目の四角形が表示されません。ウィンドウのサイズを変更すると、そうです。また、スクロールする長方形が有線で拡張されている場合。
この場合、スクロールはどのように実装する必要がありますか? QGraphicsView でのスクロールに関するトピックをいくつか見つけましたが、問題を解決するものはありません。