Я работаю через устаревший код с более чем 500 формами в нескольких каталогах. Мне нужно найти любой TDataset desgenent с тег свойство не установлено.Есть ли способ загрузить форму программно из dfm
Если бы я искал значение Тега, установленное на значение somepart, это было бы в dfm, и я мог бы его искать. В этом случае свойство Tag будет отсутствовать в dfm.
Мой лучший poroposal пока что должен написать другую программу, которая загружает все формы по одному. В загруженном событии он может проверять компоненты и свойство. Слишком много работы, чтобы добавить их все вручную в проект, исправить предложение uses и создать каждый по типу. Даже если бы я это сделал, нет способа гарантировать, что я не пропустил форму. Также некоторые формы имеют то же имя, что и другие (они находятся в разных папках и являются эксклюзивными).
Вопрос
Я хотел бы, чтобы сканировать папки для файлов DFM и загружать формы только из файла DFM. Это даже разумно или возможно? Если да, то как я могу программно загрузить/создать форму только из dfm?
Зачем вам нужно создавать формы. Просто проанализируйте файлы dfm. В этом случае язык сценариев пригодится. –
Дэвид, я думал о регулярном выражении и отбросил его. У меня не было скриптов. Есть еще несколько проблем с этим. 1) Там много подклассов TDataset. Я должен найти все их имена, которые подвержены ошибкам. 2) У dfm есть вложенные объекты, мне нужно искать отсутствующее свойство Tag в потомке TDataset. Итак, да в теории это возможно. И если все остальное не удастся, мне, возможно, придется это сделать. –
Приходится ли добавлять все формы в приложение в список автоматического создания, а затем перечислять их через Application.Components? – Abelisto