Доброго времени суток.
В мануалах по фреймам написано что если в компоненте исходного фрейма меняешь какое либо свойство ну например Edit1.ReadOnly:=True то в формах где данный фрейм ранее был вставлен данный компонент автоматически меняет свое свойство.
Но так не происходит, все его компоненты остаются без изменения.
Почему так?
Наследуемые свойства фреймов
Модератор: Модераторы
во первых: если в дочернем фрейме (в визуальном редакторе свойст) Вы ЯВНО задали значение (например Edit1.ReadOnly:=FALSE), то его изменение в родительском НЕ повлияет на дочерний, так как значение будет браться из дочернего объекта. Тут надо оговориться что я сей час говорю про "ДесигнТайм", то есть те изменения который попадают в файл *.lfm.
во вторых: на данный момент в моем Лазарусе (SVN:42367), да и предыдущих версиях (не знаю как там с "релизными", не пробовал), есть косяк по работе с наследуемыми фреймами. Как-то плохо он с ними работает и очень часто приходится файл *lfm менять руками. Именно Ваш случай, изменяем родительский фрейм, но на формах использующих дочерний, изменений не происходит. Правим руками *lfm, удаляем свойства которые должны быть заданы в родителе, перезагружаем форму и все получается. Муторно конечно.
во вторых: на данный момент в моем Лазарусе (SVN:42367), да и предыдущих версиях (не знаю как там с "релизными", не пробовал), есть косяк по работе с наследуемыми фреймами. Как-то плохо он с ними работает и очень часто приходится файл *lfm менять руками. Именно Ваш случай, изменяем родительский фрейм, но на формах использующих дочерний, изменений не происходит. Правим руками *lfm, удаляем свойства которые должны быть заданы в родителе, перезагружаем форму и все получается. Муторно конечно.
