はじめまして。VBをはじめたばかりの何もわからない超初心者です。
ちょっと教えてください。どのディスプレイでも常にフォームを真ん中にだしたいのですが、そのためには画面の解像度を取得してその値をもとに画面表示すればいいと思っているのですが、画面の解像度の取得の仕方がわかりません。もしご存知の方がいれば教えていただきたいのですが、どうぞよろしくお願いいたします。
一応SystemParametersInfoというAPIを使えば解像度を取得できますが、
フォームのStartUpPositionプロパティじゃダメですか?
あ、GetMonitorInfoの方だったかも……。
単に、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
とか。
設計時の解像度から甚だしく違う環境だと、
サイズやフォントの調整が必要かもしれませんね。
nanasi様、だい様お早い回答ありがとうございます。
APIを使うロジックはインターネットにあったのですが、とてもややこしく、
自分のレベルにはまだ早いと思ったので、回避しました。
だい様のこのやり方でいきたいと思います。
どうもありがとうございました。
ついでといってはなんですが、フォームイベントのLoadとInitializeの違いってなんですか?もしご存知でしたら教えてください。どうぞよろしくお願いします。
ツイート | ![]() |