これは、Qt Simulator (電話用) で発生します。ウィジェットの領域の一部のみを更新しようとしていますが、代わりにウィジェット全体が更新されます。
説明のために、次のコードを使用します。
void Widget::mousePressEvent(QMouseEvent *event)
{
update(0, 0, 10, 10);
}
void Widget::paintEvent(QPaintEvent *event)
{
qDebug() << event->rect();
}
ウィジェットをクリックすると、次のデバッグ出力が表示されます。
QRect(0,0 458x832)
ウィジェットの全領域です。
ここで何が間違っていますか?
編集
Linux で同じコードを実行したところ、正常に動作し、デバッグ出力は
QRect(0,0 10x10)