6

我制作了一个窗口,其中将有两个组/面板和它们之间的一些按钮。我想以这样一种方式对调整大小行为进行编码,当窗口扩展时,两个面板会增加它们的宽度,同时保持它们之间的距离不变。

请看这个模型:

窗口大小调整

正如您在上面看到的,我希望“本地”和“服务器”面板调整大小,同时保持它们之间的距离相同。如果我使用锚点(上+左+右+下),左侧面板将与右侧面板重叠,右侧面板的宽度将超出窗口。我希望他们平等地分享增加的窗口宽度。

至于中间的按钮,我只将 ancors 保留为 Top。通过从按钮中删除左锚点,它会在窗口展开时自动将自己置于窗口的中心,这正是我想要的方式。

任何想法如何管理面板的大小调整?

谢谢。

4

1 回答 1

18

使用TableLayoutPanel控件。

首先将 TableLayout 添加到 Form 并将其 Dock() 属性设置为 Fill。接下来,您需要设置 3 列和 2 行。将两个按钮添加到中间列,每个按钮都在自己的行中。之后,设置列值,使它们如下所示: 在此处输入图像描述 将行都保留为 50%。现在将您的两个 GroupBoxes 添加到第一行的第一列和第三列。对于两个 GroupBox,将 Dock() 设置为 Fill,并将 RowSpan() 设置为 2。对于顶部按钮,仅打开底部锚点。对于底部按钮,仅转动顶部锚点。对于 TableLayoutPanel,将 Padding() 设置为 5,5,5,5。

这是我完成后的样子: 在此处输入图像描述

调整窗口大小并观察控件的行为...

于 2013-09-29T06:34:15.400 回答