10

我有一个包含三个部分的表单,我想让用户随意调整它们的大小

左侧有一个部分(占整个高度),右侧有一个部分再次垂直切成两半。见下文:

11|22
11|---
11|33

使用一个分离器非常简单:

Component1.align := alLeft
Splitter1.align := alLeft
Component2.align := alClient

现在,从那开始,我完全不知道如何让垂直分离器工作。如果我将第二个拆分器设置为 alTop 或 alBottom,它会一直到顶部/底部,而不仅仅是在右半部分。

我设法得到这样的东西:

11111
--------
22||33

通过先创建垂直分割,然后创建水平分割,但反之则行不通。

一种可能的解决方案是使用面板作为我的右侧,然后在此面板内使用拆分器进行垂直拆分,但感觉并不正确。

谢谢

4

2 回答 2

19

额外的面板是正确的方法。试图在一个 ClientArea 内有 2 个 Splitter 只会让 Alignment 系统负担过重。此外,额外的 TPanel 的成本非常低。

于 2009-06-07T18:49:54.220 回答
1

放置 2 个控件。例如 2 Richedit: - 将两个控件放在同一个面板上。- 左边的属性 'align' 到 'aleft' - 右边的属性 'align' 到 'alclient' !!! - 然后将分离器放在中间。- 拆分器与 alLeft 对齐。

对于水平拆分器,将拆分器对齐属性更改为“altop”。

于 2012-06-12T15:19:11.880 回答