我正在编写一个自定义组件编辑器,基本上类似于TActionList编辑器,因为它允许创建子组件.
编辑器具有添加/删除组件的按钮.
编辑器具有添加/删除组件的按钮.
现在,我想知道是否继承了所选组件,以便我可以禁用删除按钮.
我没有在IDesigner或相关接口中找到任何此类成员.
如果我继续使用Designer.DeleteSelection(True)继续删除;然后我得到一个例外:
Selection contains a component,xxx,introduced in an
ancestor and cannot be deleted.
这不是太糟糕,但我宁愿首先禁用删除按钮.
解决方法
好的,显然有一种方法,通过检查csAncestor的TComponent.ComponentState,所以:
csAncestor in ComponentState
它是documented:
csAncestor – The component was introduced in an ancestor form. Only set if csDesigning is also set.
原文地址:https://www.jb51.cc/delphi/239243.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。