none
VBのフォームがPCによって表示サイズが異なる RRS feed

  • 質問

  • いつもお世話になっております。Vb.Netで作成した、ログインID、パスワードを入力する小さな画面があるのですが

    1台だけどうしてもサイズがおかしく(小さく表示されます)、すべてのコントロールを表示することができません。

    過去の事例も調べてみて下記の内容を正しく表示されるPCとそうでないPCの比較をしてみました。

    解像度は両方とも1366×768

    DPIは両方とも100%

    デフォルトのフォントは両方ともYu Gothic UIになっています()

    画面上の文字を見やすくしますも合わせています。

    プログラムのAutoScaleModeはFontになっています。

    あとはどこを調べればいいかご教授ください。

    よろしくお願いいたします。

    2019年4月29日 3:05

回答

  • jbaront様

    上記KBをアンインストールしたら改善しました。

    このKBの修正モジュールが出てくれないと、令和が使えないし困ったものです。

    ありがとうございました。

    • 回答としてマーク qoo_man 2019年4月30日 7:36
    2019年4月30日 7:35

すべての返信

  • 同一のモジュール(Exe)で異なる表示サイズとなるのでしょうか?

    異なるサイズのPCのWindowsの種類(7とか10)のバージョンは同等なのでしょうか?

    2019年4月29日 6:40
  • kenjinote様

    すみません。記載が漏れていました。

    どちらもwindows10です。

    よろしくお願いいたします。

    2019年4月29日 9:06
  • 小さくという表現だけですと、受け手によって様々な解釈が成り立つため、伝わらないと思われます。
    文字が小さい、フォームの垂直方向だけへこんだように縮む、フォームの水平方向だけへこんだように縮むなど。

    ちなみに、タスクバーの位置(上下、左右)やタスクバーのアイコンのサイズ(大きい・小さい)、タスクバー自体のサイズ(高さ・幅)が異なるということはありませんか?
    タスクバーが大きいと、その分、フォームの最大サイズに制限を受けるので、結果的に、意図しない縮み方をすることはあり得ます。


    2019年4月29日 10:57
    モデレータ
  • さらに質問ですが、Windows 10の詳細バージョンは同じでしょうか?Windows 10のバージョンによってDPIとは別にウィンドウタイトルのフォントサイズやメニューのフォントサイズが変更できたようです。

    また、exeのファイルのプロパティで「互換性」タブの設定値は同等になっていますでしょうか。この設定もWindowサイズに影響を与える可能性があります。

    あとは、Windows 10は複数のディスプレイで異なるDPIを設定できるので、そのあたりすべてのDPIが100%となっているか確認できますでしょうか。

    もし可能でしたら、ここへ正常表示のウィンドウとサイズがおかしいウィンドウのキャプチャーを掲載することは可能でしょうか。

    2019年4月29日 11:08
  • kenjinote様

    このような感じになります。

    2019年4月29日 23:49
  • 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を一旦削除して改善されるかお試しください。



    2019年4月30日 0:47
  • うーん。ウィンドウの縁(border)も切れてトリミングされたような感じになっていますね。(コントロールやタイトルバーの大きさは変わっていない)

    プログラムから認識できるウィンドウサイズも小さくなっているのでしょうか?下記のサイトを参考にすると実行時のウィンドウサイズを取得できる。
    https://dobon.net/vb/dotnet/form/setdesktoplocation.html

    対処療法ですが、AutoScaleMode を None にして、ウィンドウの生成時にコードからウィンドウサイズを指定するのはいかがでしょうか。

    他の方もおっしゃっていますが、Windows 10の詳細バージョンを合わせることで現象が解消される可能性もあります。また、常駐ソフトが起動している場合はすべての常駐ソフトを落としてみても効果があるかもしれません。

    2019年4月30日 4:00
  • jbaront様

    上記KBをアンインストールしたら改善しました。

    このKBの修正モジュールが出てくれないと、令和が使えないし困ったものです。

    ありがとうございました。

    • 回答としてマーク qoo_man 2019年4月30日 7:36
    2019年4月30日 7:35
  • kenjinote様

    KB4493437をアンインストールすることで解決しています。

    ただ、令和対応のようなので、修正モジュールが出てほしいです。

    ありがとうございました。

    2019年4月30日 7:38
  • Azulean様

    KB4493437の影響のようでした。

    アンインストールで解決しています。

    ありがとうございました。

    2019年4月30日 7:39
  • 以前からですが、月の後半に出る更新プログラムはプレビューのようなもの(翌月の第 2 火曜日に向けた先行リリース)です。(参考
    明示的に更新を取得しない限り、自動でインストールされないようになっています。
    この C/D リリースに対して誰かしらが検証に協力し、問題に対するフィードバックを出して、正式リリースである B リリースまでに修正される流れが期待される流れではありますね。
    2019年4月30日 7:52
    モデレータ
  • Azulean様

    なぜか一台だけモジュールがアップされていました。正しく動作するまで、アップロードは無がいいでしょうか?

    とりあえず、他のPCで問題が起こらないようにアップデートには注意が必要ですね。

    2019年5月2日 8:23