画面の解像度の取得について


きょーちゃん  2003-07-02 19:34:01  No: 78505

はじめまして。VBをはじめたばかりの何もわからない超初心者です。
ちょっと教えてください。どのディスプレイでも常にフォームを真ん中にだしたいのですが、そのためには画面の解像度を取得してその値をもとに画面表示すればいいと思っているのですが、画面の解像度の取得の仕方がわかりません。もしご存知の方がいれば教えていただきたいのですが、どうぞよろしくお願いいたします。


nanashi  2003-07-02 19:43:29  No: 78506

一応SystemParametersInfoというAPIを使えば解像度を取得できますが、
フォームのStartUpPositionプロパティじゃダメですか?


nanashi  2003-07-02 19:48:26  No: 78507

あ、GetMonitorInfoの方だったかも……。


だい  URL  2003-07-02 19:57:36  No: 78508

単に、Screen.Height 、Screen.Width じゃ物足りませんか?

FormのLoad時に、
'フォームを中央に配置
    If (Me.WindowState = 0) Then
        Me.Top = (Screen.Height - Me.Height) / 2
        Me.Left = (Screen.Width - Me.Width) / 2
    End If

とか。

設計時の解像度から甚だしく違う環境だと、
サイズやフォントの調整が必要かもしれませんね。


きょーちゃん  2003-07-02 20:27:13  No: 78509

nanasi様、だい様お早い回答ありがとうございます。
APIを使うロジックはインターネットにあったのですが、とてもややこしく、
自分のレベルにはまだ早いと思ったので、回避しました。
だい様のこのやり方でいきたいと思います。
どうもありがとうございました。
ついでといってはなんですが、フォームイベントのLoadとInitializeの違いってなんですか?もしご存知でしたら教えてください。どうぞよろしくお願いします。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加