在我身上发生了这样的事情, Delphi XE 6 IDE * 忘记了 * 我过去创建的所有TFrame
后代。
更具体地说,当我点击标准-〉框架,对话框选择我的框架不再显示。
而是显示以下错误消息:
没有可插入的框架。可以从文件创建新框架|新增|其他选择..
有没有补救的办法?
EDIT 1很遗憾,无法提供重现步骤:老实说,我不知道这是怎么发生的,但它确实发生了。我认为可能是从 Delphi 的某些版本升级到另一个版本时的罪魁祸首。随着时间的推移,我多次进行这种升级,我记得在Delphi 7中开始了这个项目,然后有一些版本,我不记得是哪一个,我使用的最后两个版本是XE 2,直到现在是XE 6。
Edit 2如果框架是用XE 2之前的 Delphi 版本创建的,则会发生这种情况。
4条答案
按热度按时间sxpgvts31#
问题的原因在于添加
Firemonkey
框架时对.dproj
文件的更改。为了区分为vcl
制作的帧和为fmx
制作的帧,在.dproj
文件中添加了一行,如下所示。要对.dproj
文件进行更正,请执行以下操作:1.关闭 Delphi IDE。
1.使用您选择的文本编辑器打开
.dproj
文件。1.逐一查找
TFrame
。1.让我们假设下面是您的
TFrame
节:1.修复方法是将以下行添加到该部分:
(in
fmx
项目行为<FormType>fmx</FormType>
)xghobddn2#
我有这种事情发生;对我来说要简单得多。
我有一个fmx项目有一些帧和一个vcl项目,没有在一个单一的项目组(不同的子目录)。
如果我打开了一个fmx单元,并试图从组件菜单添加一个帧,但有vcl项目作为编译目标,然后我得到了这个消息。改变编译目标到应用程序,其中包含我打开的单元和帧的集合停止了错误。
yeotifhr3#
IDE中似乎存在bug,具体来说,IDE提供了
IOTASourceEditor
接口,该接口有CreateWriter
方法来获取IOTAEditWriter
接口。一些IDE扩展可能会使用
IOTAEditWriter
接口的方法来(例如)编辑.dpr文件的内容(基本上,只要一系列的.DeleteTo
和.Insert
就足够了)。显然,这是以某种方式迫使IDE损坏.dproj文件。brqmpdu14#
我也有同样的问题框架内容没有正确更新,在更新和删除框架几次后,它坏了。在项目视图下,我删除了所有的框架(右键单击从项目中删除),并再次添加它们(右键单击项目-〉添加)