Нет файла .dfm для TMyComp
. Вы можете не пытаться загрузить .dfm, вызвав конструктор CreateNew
, а не Create
.
Mc := TMyComp.CreateNew(Self);
Используйте CreateNew вместо Create для создания формы без использования связанного файла .DFM для ее инициализации. Всегда используйте CreateNew, если потомок TCustomForm не является объектом TForm или потомком TForm.
CreateNew обходит потоковое содержимое ранее связанного файла .DFM. Если форма содержит визуальные компоненты, поэтому вы должны передавать во внешний .DFM, чтобы связывать визуальные компоненты с их классами. Если вновь созданная форма имеет внешний .DFM-файл, вы можете выполнить вызов CreateNew с вызовом InitInheritedComponent. Если вам нужно создать файл .dfm для экземпляра новой формы, скопируйте вызов CreateNew с вызовами WriteComponentResFile и ReadComponentResFile.
blockquote>