トップ回答者
VBのフォームがPCによって表示サイズが異なる

質問
-
いつもお世話になっております。Vb.Netで作成した、ログインID、パスワードを入力する小さな画面があるのですが
1台だけどうしてもサイズがおかしく(小さく表示されます)、すべてのコントロールを表示することができません。
過去の事例も調べてみて下記の内容を正しく表示されるPCとそうでないPCの比較をしてみました。
解像度は両方とも1366×768
DPIは両方とも100%
デフォルトのフォントは両方ともYu Gothic UIになっています()
画面上の文字を見やすくしますも合わせています。
プログラムのAutoScaleModeはFontになっています。
あとはどこを調べればいいかご教授ください。
よろしくお願いいたします。
回答
すべての返信
-
さらに質問ですが、Windows 10の詳細バージョンは同じでしょうか?Windows 10のバージョンによってDPIとは別にウィンドウタイトルのフォントサイズやメニューのフォントサイズが変更できたようです。
また、exeのファイルのプロパティで「互換性」タブの設定値は同等になっていますでしょうか。この設定もWindowサイズに影響を与える可能性があります。
あとは、Windows 10は複数のディスプレイで異なるDPIを設定できるので、そのあたりすべてのDPIが100%となっているか確認できますでしょうか。
もし可能でしたら、ここへ正常表示のウィンドウとサイズがおかしいウィンドウのキャプチャーを掲載することは可能でしょうか。
-
qoo_man様
Window10のバージョンは何でしょうか?
Windows 8.1、Window10 1803にて以下のような質問が上がっております。これが関係するかもですね。
https://answers.microsoft.com/ja-jp/windows/forum/all/windows/8a486c9b-fe7f-49d7-ac78-7a7e350604c0
KBを適用されている場合、もし可能でしたら関連するKBを一旦削除して改善されるかお試しください。
- 編集済み jbaront 2019年4月30日 0:49
- 回答の候補に設定 AzuleanMVP, Moderator 2019年4月30日 7:48
-
うーん。ウィンドウの縁(border)も切れてトリミングされたような感じになっていますね。(コントロールやタイトルバーの大きさは変わっていない)
プログラムから認識できるウィンドウサイズも小さくなっているのでしょうか?下記のサイトを参考にすると実行時のウィンドウサイズを取得できる。
https://dobon.net/vb/dotnet/form/setdesktoplocation.html対処療法ですが、AutoScaleMode を None にして、ウィンドウの生成時にコードからウィンドウサイズを指定するのはいかがでしょうか。
他の方もおっしゃっていますが、Windows 10の詳細バージョンを合わせることで現象が解消される可能性もあります。また、常駐ソフトが起動している場合はすべての常駐ソフトを落としてみても効果があるかもしれません。
- 編集済み kenjinoteMVP 2019年4月30日 4:00