• ベストアンサー

ディスプレイ解像度より大きなフォームをデザインしたいのですが

Visual Studio.NET 2003のVB.NETでWindowsアプリケーションの開発を行っています(OSはWindowsXP Pro SP2)。 解像度が1280x1024や1024x768の液晶ディスプレイで開発をする際に、ディスプレイの解像度より大きなサイズのフォームを作ろうとしても、強制的に解像度付近のサイズにSizeプロパティが変更されてしまいます。 たとえば、1280x1024の17インチ液晶で、1600x1200のフォームを作ろうとしてデザイン画面からSizeプロパティのWidth、Heightを変更しても、プロパティ記入欄からフォーカスが移動したとたんに、幅と高さが1292x1036に変更されてしまいます。 ディスプレイを買えばすむ話なんですが、できれば買い換え無しで対処したいところです。どなたか回避策(小さいディスプレイでも大きなフォームをデザインできるようにする方法)をご存じないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

サブクラス化 WM_GETMINMAXINFOを認識 lParamをMINMAXINFO構造体の変数に収めptMaxTrackSizeを変更する http://www.vbvbvb.com/jp/gtips/0801/gSetWindowLongGwlWndProcWmGetMinMaxInfoPtMaxTrackSize.html

noname#25230
質問者

お礼

ありがとうございます。 なるほど、簡単な設定だけでは無理なんですね。ソース自体に専用のロジックや仕組みを盛り込む必要があるとなると、また違う面での問題が出てきますので、今回いただいた情報は別の機会で利用させていただきます。 今回は開発環境だけの話ですので、とりあえずディスプレイやPCの入れ替えを検討する路線で考えてみます。

その他の回答 (1)

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

あまり参考にならない回答ではありますが、私がデザイン時のフォームの大きさに困ったときには、Virtual PCで仮想PCを作成し、そちらのPCのデスクトップを大きくして凌いだことがあります。

noname#25230
質問者

お礼

手元にVMWareがありましたので、試してみました。確かにいけますね。どうしようもない場合の対策として検討させていただきます。今回は、ディスプレイを手配する路線になりそうです。 アドバイスありがとうございました。

関連するQ&A