특히 이미지 처리와 관련하여 Qt의 메모리 모델에 익숙하지 않습니다. 빈 픽스맵을 만들어 QGraphicsView의 장면에 추가했습니다. 이것은 올바르게 두 크기 사이에서 점프하는 것처럼 보이지만 QFileDialog (before 및 after)를 열면이 함수를 호출하는 그래픽 아티팩트를 얻게됩니다. 이 유물들은 내 주변을 돌아 다니며 볼 수 있기 때문에 실제로 볼 수 있습니다. 화면에서 QFileDialog가 팝업되는 부분은 문제가되지 않지만 여전히 이러한 문제가 발생합니다.QGraphicsView는 파일 대화 상자를 연 후 아티팩트를 표시합니다.
이미지의 해당 부분을 수동으로 다시 렌더링하려면해야 할 일이 있습니까? 아니면 코드의 다른 부분에서 더 심각한 문제가있을 수 있습니까? 그 QImage
생성자
void RenderView::setViewport(int width, int height)
{
if (_viewportOverlay != 0)
scene()->removeItem(_viewportOverlay);
const int BORDER = VIEWPORT_BORDER;
QImage image(width+BORDER*2,height+BORDER*2, QImage::Format_ARGB32);
QPixmap pixmap = QPixmap::fromImage(image);
_viewportOverlay = scene()->addPixmap(pixmap);
}