WM_PAINTの発生数


加納  2006-11-26 08:42:52  No: 63691  IP: 192.*.*.*

WM_PAINTとモニタのリフレッシュレートに関係について教えてください。

たとえば、リフレッシュレートを60ヘルツにするとWM_PAINTが最大で1秒間に60回発生する可能性があるのでしょうか。
それとも、WM_PAINTはリフレッシュレートとは関係なく発生し、メモリ上は60回/秒以上再描画が発生するが、モニタ上は60回/秒の再描画となるのでしょうか?

編集 削除
モーヲタ  2006-11-26 09:18:28  No: 63692  IP: 192.*.*.*

WM_PAINTとモニタのリフレッシュレートを混同しているようですね。
リフレッシュレートはディスプレイそのものの描画速度で
垂直走査周波数(Hz)を表すものです。いわばディスプレイそのものの
性能ですかね。

WM_PAINTメッセージはOSが画面の描画が必要だと判断したときにだけ
送られてくるメッセージです。例えばウィンドウが別のウィンドウの
下に隠れていて、別のウィンドウの上に来たとき、再描画する必要が
あるとOSからメッセージが送られてきます。

参考サイト

リフレッシュレート
http://e-words.jp/w/E59E82E79BB4E8B5B0E69FBBE591A8E6B3A2E695B0.html

WM_PAINT
http://www.kumei.jp/c_lang/sdk/sdk_04.htm

等いろいろありますのでネットで詳しく調べたらどうですか?

編集 削除
加納  2006-11-26 15:31:02  No: 63693  IP: 192.*.*.*

すみません。
質問が悪かったです。
改めて書き直させてください。

WM_PAINTは、1秒間に最大何回程度発生する可能性があるのでしょうか。

たとえば、60Hzのフレームレートを設定している場合、1/60秒以内に2度再描画メッセージ(WM_PAINT)を送信するのは意味が無いと思われますので、OS側の判断により、WM_PAINTは1秒間に最大で60回までしか送られないというようなことがあるのでは、、と思ったので質問させていただきました。OS側でモニタのフレームレートを設定できる以上、OS側はフレームレートを認識していると思いますので。。

フレームレートとWM_PAINTに関連性はなく、WM_PAINTは、CPU等の環境の限界まで連続で発生する可能性がある、ということならそれはそれで構いません。

編集 削除
アルガ  2006-11-26 22:04:22  No: 63694  IP: 192.*.*.*

だから根本的に考え方が間違ってます。
モーヲタさんが書いている事が全てで、それを読めば
>フレームレートとWM_PAINTに関連性はなく…
であることが分かるはずです。モーヲタさんの書き込みを全然読んでないみたいでちょっと失礼ですよ。

>CPU等の環境の限界まで連続で発生する可能性がある
と考えること事態が既に間違っています。

編集 削除