0

QGLWidget に問題があります。実際には、マウス操作で QGLWidget が更新されます。たとえば、ダブルクリック イベントを使用して、このウィジェットから別のウィンドウを開く必要があります。QGLWidget を親として新しいウィジェット QWidget を作成し、次のフラグを新しいウィンドウに設定しています。

QWidget::setWindowFlags(Qt::Window | Qt::WindowTitleHint | Qt::CustomizeWindowHint | Qt::WindowMinimizeButtonHint | Qt::WindowCloseButtonHint);

この新しいウィンドウは正常に開き、期待どおりに機能します。しかし、このウィンドウを閉じて QGLWidget を更新しようとすると、奇妙な動作をします。QGLWidget 全体 (新しいウィンドウが開いた領域) のごく一部が更新されますが、QGLWidget 全体ではありません。

また、ここで別のポイントを更新するのを逃しました。この問題は毎回発生するわけではありません。qt アプリケーションは別のアプリケーションで開かれ、必要な dll とともに再配布されます。独立したアプリケーションとして開く場合は問題ありません。しかし、他のアプリケーションで開くと、問題が再発します。

理由はありますか?

ありがとうございました!!

4

1 に答える 1

0

私はあなたの言うことをやっている簡単なQtアプリを一緒に投げましたが、この問題は見られませんでした。子ウィジェットは通常どおり表示されます。邪魔にならないように移動したり閉じたりすると、その下にGLシーンが表示されます。おそらく、コードのスニペット、または問題のスクリーンショットを提供することができます。

ただし、ここで説明するように、どういうわけか、GLウィンドウが特定の領域に制限されたペインタで更新されているようです

于 2011-08-23T20:22:18.483 に答える