Но вот по задаче, был бы логично сделать две панели TToolBar и разместить их в TControlBar.
перекопал весь интернет, но так и не нашел решения проблемы с выравниванием тулбаров размещенных в контролбаре
В ide - настроил вот так
Т.е. управлял Top и Left Toolbar1 и ToolBar2, и они вот встали красиво и как надо
Компилирую, запускаю и в итоге, все выстраиваются каждый в свою линии да еще и с промежутком
Причем такая же картина наблюдается если просто закрыть лазарус и открыть его с этим же проектом.
подскажите, как задать первоначальное положение контролов размещенных в ControlBar
Добавлено спустя 31 минуту 1 секунду:
Сделал такой вот костыль
- Код: Выделить всё
procedure TForm1.Button1Click(Sender: TObject);
begin
// размещаем еще один тулбар в контролбаре
ToolBar3.Align:=alNone;
ToolBar3.Parent:=ControlBar1;
ToolBar3.Left:=200;
Toolbar3.top:=0;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
end;
procedure TForm1.FormShow(Sender: TObject);
begin
// выравнивание размещенных тулбаров по левому краю в одну строку
Toolbar1.Left:=0;
ToolBar1.Top:=0;
ToolBar2.Left:=0;
Toolbar2.Top:=0;
end;
Выравнивает по левому краю.
Но имхо это костыль, т.к. работает только в том случае если форма отобразилась, т.е. на OnCreate формы - не работает
только на OnFormShow
Так же непонятно вот это
- Код: Выделить всё
ToolBar3.Left:=200;
Toolbar3.top:=0;
т.к. 200 - это установлено чисто эмпирическим путем..., если ставить меньше, то третья панель размещается вторым рядом со сдвигом вправо на указанное количество пикселей
а вот когда 200 и более, то она пришвартовывается к крайней правой панели в первом ряду, но опять таки задать безумно большое число не получается,
например ставишь 1900, и панелька стоит в первом ряду, но почти уехала за край окна, т.е. она разместилась явно не на 1900 пикселях, а просто там стало значение которое позволяет отобразить левую часть панели
в правом крае окна (пикселей на 10, такой хвостик от панели торчит )
Очень прошу, подскажите, как работать с этим контролабаром нормально