Итак, вы создали фрейм, а затем сбросили его экземпляр в другой форме, и проблема в том, что последующие изменения, внесенные в исходный фрейм, сразу не отображаются, пока вы не удалите экземпляр и не уроните его повторно?
Вам не нужно удалять фрейм, просто щелкните правой кнопкой мыши и выберите элементы управления, для которых вы хотите, чтобы их свойства были получены из их основных свойств (оригинального фрейма), и нажмите Revert to inherited
. Как ни странно, Select All не работает в кадрах.
Это одна из причин, по которой я избегаю фреймов. Мне бы хотелось, чтобы у фреймов было свойство «не разрешать настройку» (AllowCustom = false), которое предотвращало бы любые конфликты DFM во время разработки, не позволяя фреймам иметь эти странные двойные наборы свойств.
Еще один способ нормализовать ваши фреймы - щелкнуть правой кнопкой мыши и просмотреть форму в виде текста, а затем уменьшить размер фрейма до следующего:
inline Frame61: TMyFrame61
Left = 0
Top = 0
Width = 500
Height = 500
Align = alNone
TabOrder = 0
ExplicitLeft = 31
ExplicitTop = 33
end
Теперь он вообще не содержит переопределенных свойств.
Если я перетащу один из элементов управления в другое место (даже случайно), в DFM, где был отброшен кадр, произойдет следующее:
inline Frame61: TMyFrame6
Left = 0
Top = 0
Width = 500
Height = 500
Align = alNone
TabOrder = 0
ExplicitWidth = 527
ExplicitHeight = 337
inherited Edit2: TEdit
Left = 19
Top = 77
ExplicitLeft = 19
ExplicitTop = 77
end
end
Эти дополнительные мелочи в DFM мешают изменениям, которые вы сделали на другом уровне. Обычно добавление дополнительных элементов управления и удаление элементов управления не является проблемой (дополнительные элементы управления должны отображаться при добавлении, автоматически, а удаленные элементы управления должны исчезать), но с эффектами проблем позиционирования (перекрытия элементов управления и т. Д.) Может быть эффект, что вы не пока не увидишь изменения.