我在ScrollBox中有6个RichEdit控件。它们需要从上到下顺序左对齐,但是我需要不固定宽度,因此当文本长度超过ScrollBox宽度时,可以使用滚动条滚动查看全文。

如果我设置:

RichEdit1.Align := alTop;
RichEdit2.Align := alTop;
RichEdit3.Align := alTop;
RichEdit4.Align := alTop;
RichEdit5.Align := alTop;
RichEdit6.Align := alTop;


它们完美对齐并保持设计固定,因此不会意外移动,但是宽度固定。不好。

如果我手动对齐它们,则单击它们时它们并不会固定并且可以移动,因此我需要一直重新排列。烦死了

图片显示在所有RichEdits的顶部,其中Align = alTop,而width固定为ScrollBox的宽度。
底部示例是手动对齐所有RichEdits,其宽度可以超过ScrollBox的宽度,但可以在设计中移动它们:

delphi - 如何在没有固定宽度的情况下左右对齐控件?-LMLPHP

因此,我想像alTop一样将它们固定在左侧,顶部,但不固定宽度。我该如何实现?

最佳答案

在设计时使用Align = alTop。然后,在运行时(例如,窗体的OnCreate)设置Align := alNone,并根据需要更改宽度。

10-05 22:16