With code1, the display looks very fine.
{
setWidth(event->size().width());
setHeight(event->size().height());
fitInView
(QRectF(0,
0,width
(),height
()),Qt
::KeepAspectRatioByExpanding);
arrangeNodes();
update();
}
{
Q_UNUSED(option);
painter
->setRenderHint
(QPainter::SmoothPixmapTransform);
painter
->setPen
(QPen(Qt
::red));
painter
->setBrush
(QBrush(Qt
::gray, Qt
::Dense4Pattern));
painter->drawRect(draw);
}
void my_graphics_view::resizeEvent(QResizeEvent *event)
{
setWidth(event->size().width());
setHeight(event->size().height());
fitInView(QRectF(0,0,width(),height()),Qt::KeepAspectRatioByExpanding);
arrangeNodes();
update();
}
void my_graphics_item::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *)
{
Q_UNUSED(option);
painter->setRenderHint(QPainter::SmoothPixmapTransform);
painter->setPen(QPen(Qt::red));
painter->setBrush(QBrush(Qt::gray, Qt::Dense4Pattern));
painter->drawRect(draw);
}
To copy to clipboard, switch view to plain text mode
But with the following code2, the display changes:
{
setWidth(event->size().width());
setHeight(event->size().height());
arrangeNodes();
m_scene->setSceneRect(0,0,width(),height());
update();
}
{
Q_UNUSED(option);
painter
->setRenderHint
(QPainter::SmoothPixmapTransform);
painter
->setPen
(QPen(Qt
::red));
painter
->setBrush
(QBrush(Qt
::gray, Qt
::Dense4Pattern));
painter->drawRect(draw);
}
void my_graphics_view::resizeEvent(QResizeEvent *event)
{
setWidth(event->size().width());
setHeight(event->size().height());
arrangeNodes();
m_scene->setSceneRect(0,0,width(),height());
update();
}
void my_graphics_item::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *)
{
Q_UNUSED(option);
painter->setRenderHint(QPainter::SmoothPixmapTransform);
painter->setPen(QPen(Qt::red));
painter->setBrush(QBrush(Qt::gray, Qt::Dense4Pattern));
painter->drawRect(draw);
}
To copy to clipboard, switch view to plain text mode
This display of code1 and code2:
Bookmarks