VB2005 コントロールの配置Dockの設定

解決


もん  2006-01-30 03:59:20  No: 129938

ちょっとしたアプリを作ろうとしたのですが、コントロールの配置がうまくできません。

ウインドウを3分割し、左右テキストボックス、中央にこまごましたボタン類を配置したいと思っています。

左側テキストボックスA
中央パネル
右側テキストボックスB
という感じです。

ウインドウを大きくすることも可能にするため、Dockを設定したいと思っています。このとき、中央のパネルの大きさは変えずに、左右のテキストボックスの大きさを変えたいと思っています。

いろいろDockの設定を変えてみたのですが希望の動きはしませんでした。どうしても中央のパネルだけが大きくなってしまうのです。このような場合のDockの設定方法はどうすればいいのでしょうか?またDockの設定方法が学べるHPの紹介などありましたらそちらもよろしくお願いします。


もん  2006-01-31 06:21:17  No: 129939

ここのHPを見て少し勉強しました。
http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard18.htm

結果、連動して大きさを変更したいコントロールが複数ある場合には
VBの機能を使用して実現することは無理なのかなーと思いました。
なので以下のようなコードを書き何とか実現しました…

とりあえず解決にしましたが、もうちょっといい方法あるよ
等という情報がありましたら追加で教えていただきたいと思います。
よろしくお願いします。

Private Sub FormMain_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize

    ' 幅決め
    Dim textBoxWidth As Integer
    textBoxWidth = (Me.Width - PanelB.Width) / 2
    TextBoxBefor.Width = textBoxWidth
    TextBoxAfter.Width = textBoxWidth

    ' 位置決め
    PanelB.Left = textBoxWidth

End Sub


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

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






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