我正在编写一个自定义组件编辑器,本质上类似于TActionList
编辑器,因为它允许创建子组件。编辑器具有添加/删除组件的按钮。
现在,我想知道所选组件是否被继承,以便我可以禁用删除按钮。IDesigner
我在或相关接口中没有找到任何这样的成员。
如果我继续删除,Designer.DeleteSelection(True);
那么我会得到一个例外:
选择包含一个组件,xxx,在祖先中引入并且不能被删除。
这还不错,但我宁愿首先禁用删除按钮。
我正在编写一个自定义组件编辑器,本质上类似于TActionList
编辑器,因为它允许创建子组件。编辑器具有添加/删除组件的按钮。
现在,我想知道所选组件是否被继承,以便我可以禁用删除按钮。IDesigner
我在或相关接口中没有找到任何这样的成员。
如果我继续删除,Designer.DeleteSelection(True);
那么我会得到一个例外:
选择包含一个组件,xxx,在祖先中引入并且不能被删除。
这还不错,但我宁愿首先禁用删除按钮。
好的,显然有一种方法,通过检查TComponent.ComponentState
for csAncestor
,所以:
ComponentState 中的 csAncestor
并记录在案:
csAncestor - 组件以祖先形式引入。仅当 csDesigning 也设置时才设置。