我正在构建一个可重复使用的TFrame
,其中包含TcxPageControl
。我的想法是将框架放到表单上,然后我可以添加特定于该表单的页面。
这很好用,我可以通过设计器成功添加页面,并在运行时显示这些标签页。但是,问题是任何被放到TcxTabSheet
上的组件。
如果我在Frame本身上添加一个页面(即基本帧,而不是放在表单上的那个)并在其上放置组件,那些就显示了。但是,如果我将组件从表单中删除到同一页面上,他们就不会。
我显然在这里遗漏了一些内容,但我认为页面控件可以像任何形式一样工作(无论它是否来自TFrame
)但显然似乎有 它不喜欢。
这是一个错误,还是我做得不对?
注意 - 我正在使用"添加到调色板"将框架添加为组件的选项,因为我希望显示TPageControl
属性(重要的是)
答案 0 :(得分:0)
事实证明,此行为实际上是VCL限制,而不是对TcxPageControl
组件本身的限制。这里的区别是TcxPageControl
允许从Frame实例中添加类误导性的页面。
解决方法是简单地从包含TFrame
(或甚至只是标准TcxPageControl
)的TPageControl
实例继承并在其中添加页面。这并不理想,因为这意味着我每页有效地创建一个单独的TFrame
,但至少这意味着我可以重复使用作为目标的公共代码。