Шамсуддин Опубликовано 2 августа, 2016 Поделиться Опубликовано 2 августа, 2016 Как можно задать максимальный размер для компонентов с заданным align? Например, у меня есть Listbox, у него задан align=top и мне нужно, чтобы при достижения определенной ширины, он перестал расширяться. Цитата Ссылка на комментарий
0 krapotkin Опубликовано 3 августа, 2016 Поделиться Опубликовано 3 августа, 2016 только руками в OnResize. Можно придумать элемент-заполнитель, который при достижении некоторого порога будет расти вместо Цитата Ссылка на комментарий
0 Модераторы Равиль Зарипов (ZuBy) Опубликовано 3 августа, 2016 Модераторы Поделиться Опубликовано 3 августа, 2016 использовать Anchors вместо Align, и в OnResize следить за размером POV 1 Цитата Ссылка на комментарий
0 POV Опубликовано 3 августа, 2016 Поделиться Опубликовано 3 августа, 2016 29 минут назад, ZuBy сказал: использовать Anchors вместо Align, и в OnResize следить за размером Во-во!. Лучше не придумаешь. Никакого дополнительного выравнителях как в QT и т.п. фраемворках. Цитата Ссылка на комментарий
0 #WAMACO Опубликовано 3 августа, 2016 Поделиться Опубликовано 3 августа, 2016 можно использовать TStyleObject, там есть свойство FixedWidth, более которого данный стиль не даст расширяться ListBox и не надо никаких onResize! Цитата Ссылка на комментарий
0 Шамсуддин Опубликовано 4 августа, 2016 Автор Поделиться Опубликовано 4 августа, 2016 (изменено) wamaco, но тогда его вообще не возможно будет изменить. Мне нужно чтобы при достижении определенного значения ListBox перестал расширятся, а так сужаться он может хоть до 0. ZuBy, попробую этот способ. Я уже однажды делал так, но не срабатывало, наверное, потому что у меня был задан Align. Изменено 4 февраля, 2019 пользователем Шамсуддин Цитата Ссылка на комментарий
1 POV Опубликовано 4 августа, 2016 Поделиться Опубликовано 4 августа, 2016 (изменено) 30 минут назад, Шамсуддин сказал: не срабатывало, наверное потому, что у меня был задан Align. Алигн не помеха Маржину. procedure TForm1.FormResize(Sender: TObject); begin if (Form1.ClientWidth > 500) then Memo1.Margins.Right := Form1.ClientWidth-500 else Memo1.Margins.Right := 0 end; Изменено 4 августа, 2016 пользователем POV Шамсуддин и Равиль Зарипов (ZuBy) 2 Цитата Ссылка на комментарий
0 #WAMACO Опубликовано 4 августа, 2016 Поделиться Опубликовано 4 августа, 2016 3 часа назад, Шамсуддин сказал: wamaco, но тогда его вообще не возможно будет изменить. Мне нужно чтобы при достижении определенного значения ListBox перестал расширятся, а так сужаться он может хоть до 0. ZuBy, попробую этот способ. Я уже однажды делал так, но не срабатывало, наверное потому, что у меня был задан Align. сужаться будет, расширяться только до указанного значения! Цитата Ссылка на комментарий
Вопрос
Шамсуддин
Как можно задать максимальный размер для компонентов с заданным align? Например, у меня есть Listbox, у него задан align=top и мне нужно, чтобы при достижения определенной ширины, он перестал расширяться.
Ссылка на комментарий
7 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.