问题 无法删除Delphi xe7中的控件


刚刚安装了Delphi xe7。打开了一个用XE7开发的项目。旁注,但我首先担心的是,无论是将“视图”从Master更改为iPhone4,还是只是在“设计视图”中拖动控件,一切都会导致IDE挂起。我之前有一个工具单元,它具有接受TComboEdit参数的功能。似乎他们再次移动了一些东西,因为这个功能现在已被打破。为了快速找出哪个单元主持了组合编辑,我打开了一个表单并放下了一个Combo编辑并保存。很酷,现在我知道有一个FMX.ComboEdit单元。我尝试删除组合编辑,这是我得到的: Selection contains a component, ComboEdit1, introduced in an ancestor and can not be deleted.

对于我在表单上删除的任何新控件也是如此,例如甚至是TEdits。无法删除任何内容。快速谷歌搜索引用TGrids和列...在我的表单上,只有Layouts和TabControl,其中新位置控件在TabItem中。好吧,也许TabItems存在类似的错误,所以我尝试移动控件,使表单成为父级。但是,IDE会挂起大约30秒,并且不会执行任何操作。

如何删除这些控件 Delphi xe7


2449
2017-09-02 16:32


起源

好的......从iPhone4改变了“视图”,回到Master,现在我可以删除控件了。问题仍然是为什么我不能从不同的视图中删除控件(bug可能?)。会留下问题以避免我为其他人带来了5分钟的头痛,即将卸载Xe7。 - ThisGuy
虽然我没有安装XE7,但我认为新的MulitViews只是一个奇特的名字 Visual Form Inheritance。在那些设计中,您无法删除祖先形式中引入的控件。您只能以继承的形式隐藏它们。 - iamjoosy
好的,1+是有道理的。 - ThisGuy
您可能希望从不涉及继承的SIMPLE示例开始。我认为你得到的错误信息实际上是非常自我解释的。 - Warren P
@Uwe,同时我安装了XE7,我觉得它的表现与平常略有不同 Visual Form Inheritance。例如。添加到继承的视图的控件将传播回主窗体,这是a)与标准的Visual Form继承不同,以及b)导致无法在继承的视图中删除此控件。有点反直觉的IMO - iamjoosy


答案:


为了删除一个组件 View 你需要切换到 Master View 并删除那里的组件。 另请注意,您添加到特定视图的组件只能在中删除 Master View。原因是所有在任何视图上删除的组件都会传播到 Master View 然后凭借某种方式 Visual Form Inheritance 将出现在所有 Views


12
2017-09-03 00:33