マイクロソフト コミュニティ に同内容の質問を行ったところ、以下の回答を頂きましたので、質問させて頂きます。
> 調べてみたところ、今回の現象に関連しているかどうか、ちょっと判断できなかったのですが、<こちら> のページを確認してみてはいかがでしょう。
> もし、更に情報を集めたいという場合は、開発者の方が集まる <MSDN フォーラム> へ投稿した方が、情報が集まりやすいかな、と思います。
【質問内容】
VB6で作成したアプリケーションを
Windows8にて、動作確認を行っています。
機能としては問題なく動いているのですが、
1つだけ解消できない問題が発生してしまいました。
画面に配置したオブジェクト(TextBox)の幅が、設計時よりも広がって表示されている箇所があるということです。
【テスト環境】
Windows8 PRO
解像度:1280×1024(他のOSと比較するため、この解像度でテストしています。)
ディスプレイ 小-100%(既定)
私が確認できたことは
・幅が広がってしまう箇所は、設計時の幅が狭い所に集中していること。
・設計時の幅が広い個所では問題がないこと。
・フォントサイズによって広がる幅が違うこと。
・アプリケーション実行(FormLoad開始)時点で、すでにWidthの値が増えていること。
例)
× 「設計時のWidth:420 フォントサイズ:14P」 ⇒ 実行時のWidth:660
○ 「設計時のWidth:800 フォントサイズ:14P」 ⇒ 実行時のWidth:800
× 「設計時のWidth:420 フォントサイズ:12P」 ⇒ 実行時のWidth:585
○ 「設計時のWidth:800 フォントサイズ:12P」 ⇒ 実行時のWidth:800
また、WindowsXP、WindowsVista、Windows7では、同様の状態にはなりません。
このことから、
Windows8では、フォントサイズに応じた最低限のWidthまで自動的に拡張するような機能が追加されたのではないかと思い、
調べてみたのですが、有力な情報を見つけることができませんでした。
自動的に、サイズを変更してしまう機能を停止する方法がありましたら、
教えていただけると助かります。
宜しくお願いします。