На Layout-е лежат кнопки TButton и один TComboEdit (у всех Align Left или Right).
Когда экран устройства слишком маленький или если перевернуть устройство в портретный режим, то все в Layout не помещается и начинает накладываться друг на друга. Хочу задавать ширину компонент в зависимости от ширины лейаута. Как это сделать?
Пытаюсь делать так:
BtnsWidth:integer; //суммарная ширина всех кнопок на лейауте
BtnsCnt:integer; // количество кнопок
if BtnsWidth>Layout1.Width then
begin
BtnsWidth:=Round(Layout1.Width/BtnsCnt); // присваиваю средний размер кнопок
for i:=0 to Layout1.ComponentCount-1 do
begin
if (Layout1.Components[i] is TButton) or
(Layout1.Components[i] is TComboEdit) then
if (TControl(Layout1.Components[i]).Visible) then
TControl(Layout1.Components[i]).Width:=BtnsWidth;
end;
end;
Так вот Layout1.ComponentCount равен 0, хотя на нем расположены кнопки и ComboEdit.