5

QPainterを使用して、ウィンドウにグラフィックを表示しています。残念ながら、関数が呼び出されるたびにpaintEvent()、ウィンドウ全体がクリアされます。クリアせずに描画するにはどうすればよいですか?つまり、前のペイントイベントの内容をそのままにしておくにはどうすればよいですか?

Qt4を使用しています

4

3 に答える 3

5

どちらの返信も Qt3 のみを対象としているため、ここでは Qt4 のソリューションを示します。電話する必要があります

setAttribute(Qt::WA_OpaquePaintEvent);

(コンストラクターなど) ドキュメントhereに従ってください。

于 2013-08-09T11:37:52.480 に答える
4

セッターbackgroundModeを使用して設定する必要があります。setBackgroundMode列挙型はQt::NoBackgroundあなたが探しているものです。

于 2009-10-29T15:44:26.760 に答える
1

Qt3 では、 WidgetFlags 列挙型Qt::WNoAutoEraseからフラグを設定して、各ペイント イベントでウィンドウがクリアされないようにします。

このフラグをQWidget コンストラクターに渡すことで設定できます。

于 2009-10-29T15:30:17.033 に答える