HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2017
1213
KNRredraw命令の 0 と 2 の違い4解決


KNR

リンク

2017/12/13(Wed) 22:55:39|NO.82017

redraw命令のパラメータの描画モードについて、
0 と 2 の違いについて教えてください。

あるページには、
>モード値に2を足した値を指定すると、
>描画モードのみを変更し画面の更新はされません。
とあり、
1 と 3 の違いは何となく分かる気がするのですが、
0 と 2 の違いは想像がつきません。

よろしくお願いします。



この記事に返信する


いののて

リンク

2017/12/14(Thu) 16:51:15|NO.82020

描画モードの仕組みをまとめると、

描画モードを0にすると、これから描画されるものが反映されないようになります。
描画モードを1にすると、反映されていない描画内容と、これから描画されるものが反映されるようになります。
描画モードを2にすると、反映されていない描画内容は反映せず、これから描画されるものも反映しないようにします。
描画モードを3にすると、反映されていない描画内容は反映せず、これから描画されるものが反映されるようにします。

つまり、0と2は同じ働きをするものになります。



KNR

リンク

2017/12/14(Thu) 23:56:34|NO.82024

いののて様
ご回答、ありがとうございます。

しかしながら、改めてググっているときに見つけたのですが、
描画モードの 0 と 2 も若干異なっている旨の回答を見つけました。
でも、そこの回答にあるリンク先が閉鎖されており回答は分かりませんでした。

HSPの命令について本当に初歩的な質問です。 - 今使っている本にredraw... - Yahoo!知恵袋
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1146046466



kanahiron

リンク

2017/12/15(Fri) 00:34:57|NO.82025

いえ 0と2に違いは無いようです
http://dev.onionsoft.net/trac/openhsp/browser/trunk/hsp3/win32gui/hsp3gr_wingui.cpp
905行目からがredrawの実装ですが、第一引数の初期値は1、0なら2を代入して処理を行っています
その後の処理も下位1bitしか見てませんので、0と2に違いはないと言えます



KNR

リンク

2017/12/15(Fri) 17:38:42|NO.82027

kanahiron様
ありがとうございます。

なるほど!納得しました。



ONION software Copyright 1997-2021(c) All rights reserved.