ホームに戻る 初歩のVC++Programming Tipsに戻る
事例1
筆者はある日、以下のようなアプリケーションを作成しました。このダイアログにはDrag&Dropが許可されており、Dropされたファイルを処理するつもりでした。

開発マシンのNT4.0でもWin95(OSR2)でも問題なく動いていましたが、初期版のWin95では「グループボックスで囲まれた部分にはDropできない」という問題が起こりました。原因がOS側のインプリメントにあるのかリソースファイルの書き方が悪かったのかは解かりませんでしたが、同じWin32環境でも(特にWin95の初期バージョン)アプリケーションの挙動がまったく異なることがあるということを示していると思います。
事例2
このときも、開発マシンのNT4.0でもWin95(OSR2)でも問題なく動いていたアプリケーションが、初期版のWin95でおかしな動きをしました。

まず、タブのキャプションが文字化けしてしまったかのような文字列になっています。ダイアログテンプレートの定義を、DIALOGEXで行ったのが原因のようでした。(それがなぜ駄目かは不明)コントロールのプロパティで「ヘルプID」にチェックが付いた時に、ダイアログテンプレートの定義が、DIALOGからDIALOGEXに変わってしまったようです。
次に、プロパティシートの下部が欠けてしまっているのが解かります。PropertySheet関数はページの最大値に基づいてプロパティシートの初期サイズを決定するはずなのですが、この画面を見る限り、リソースファイルの最初に記述されたページのサイズをプロパティシートのサイズと決定してしまったようです。対策としては、関数の自動サイズ調整をあてにしないで、リソースを記述する段階で全てのページの大きさをプロパティシートのサイズで統一するのが手っ取り早いと思います。
copyright (c) 1998-2000 by T-Matsuo
ホームに戻る 初歩のVC++Programming
Tipsに戻る