現在あるVBのフォームのコントロールの比率を保ちながらウィンドウ全体を小さくしたいのですが簡単にできる方法はないでしょうか?
'現在のウィンドウサイズ取得
NowWindowHeight = ScaleHeight
NowWindowWidth = ScaleWidth
'設定するウィンドウサイズ設定
SetWindowHeight = 480
SetWindowWidth = 640
For I = 0 To Me.Controls.Count - 1
If TypeName(Controls(I)) = "TextBox" Then
Me.Controls(I).Height = (Me.Controls(I).Height * SetWindowHeight) / NowWindowHeight
Me.Controls(I).Width = (Me.Controls(I).Width * SetWindowWidth) / NowWindowWidth
Me.Controls(I).Top = (Me.Controls(I).Top * SetWindowHeight) / NowWindowHeight
Me.Controls(I).Left = (Me.Controls(I).Left * SetWindowWidth) / NowWindowWidth
Me.Controls(I).FontSize = (Me.Controls(I).FontSize * SetWindowHeight) / NowWindowHeight
End If
Next
自己レスですがこんな感じでできました。
後はフォーム自体のサイズを変えるぐらいですね。
問題あるようでしたら誰かご指摘ください
自己解決されたようで何よりです。
問題があるといえば、2つほど…
1.解決されたのなら解決チェックをつけてください。
2.ここは VC++ の掲示板です。
失礼しました。
VBの掲示板と似ているので間違えてしまいました。
ツイート | ![]() |