Windows 10 で画面拡大してると.NETアプリの画面サイズが・・・

今、触っているのが Visual Studio 2005(以降、VS 2005)の VB.NET なんで、最新の .NET ではどうなのかわからないが・・・

本来、縦 1000px で表示する画面を、縦が 700pxほどしかないディスプレイで表示したところ、ディスプレイ内に表示できるように(?)自動的に画面の縦が 700pxにリサイズされてしまった。
(ちなみに FormBorderStyle プロパティが FixedSingle に設定されているのでユーザが自分でリサイズすることはできない)

現在の環境は、ディスプレイ1がノートパソコンのディスプレイで、本来 1,920 x 1080 の解像度のディスプレイを 150% 表示としているため、縦は 700px となっている(加齢のため、字が小さくてよく見えないもんで(^^;)。もう一台、「複数のディスプレイ」を「表示画面を拡張する」の設定でディスプレイ2が接続されており、こちらは 1,680 x 1,050 の解像度で 100% 表示としている。

本来、.NET アプリの画面サイズが 1,280 x 1,000 なので、ディスプレイ2の方で表示してデバッグなどしていたのだが、ディスプレイ2の電源を入れずに起動してしまい、自動的にディスプレイ1で表示されてしまったのだ。

で、その後、縦 700pxの状態から戻らなくなってしまった。

VS 2005 のデザイン画面で Size プロパティを確認しても、ちゃんと 1,280 x 1,000 になっている。しかし、ディスプレイ2で表示しても 1,280 x x 700 で表示されてしまう。
試しに Size プロパティで縦を 900pxとかに変えてみても表示は変わらない。実際の画面表示サイズは 1,280 x 700 のままなのである。どうも、Size プロパティの値を正しく認識していない???

これは、Visual Studio を立ち上げ直してみても、PC を再起動してみても変わらなかった・・・

20210324_vs2005.jpg

結局、原因は(片方の)ディスプレイを 150% 表示していたためのようである。

ディスプレイ設定画面で「拡大縮小とレイアウト」の「テキスト、アプリ、その他の項目のサイズを変更する」設定を 100% にしたところ、Size プロパティの値が 1,280 x 1,000 から実際の表示サイズである 1,280 x 700 に変わっていたので、これを 1,280 x 1,000 に変更したところ表示は正常に戻った。

もちろん、Visual Studio が 2005 という古いものだというのはあるだろう。その時代には Windows の設定で画面の倍率変更ってできなかったのかも?だから VS 2005 はそのあたりの値が正常に取得できず誤動作してしまうのか???

まあ、それでもあえて言おう。

「Microsoft よ・・・。なんだかな~、なんだかな~」

トラックバック(0)

このブログ記事を参照しているブログ一覧: Windows 10 で画面拡大してると.NETアプリの画面サイズが・・・

このブログ記事に対するトラックバックURL: https://blog.netandfield.com/mt/mt-tb.cgi/5885

コメントする

このブログ記事について

このページは、shinodaが2021年3月24日 10:49に書いたブログ記事です。

ひとつ前のブログ記事は「夜の新港はキャスティングの練習にもならない「死の海」」です。

次のブログ記事は「久しぶりの有家港でメバリング」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。


月別 アーカイブ

電気ウナギ的○○ mobile ver.

携帯版「電気ウナギ的○○」はこちら