以编程方式隐藏Border-Layout区域中的组件

时间:2012-11-08 08:33:00

标签: extjs extjs4 extjs4.1 extjs-mvc

我有一个边框布局,让我们说两个区域;中心和西部。西区添加了分离器参数并且是可折叠的。现在我有一个工具栏,我想隐藏/显示西部区域。我通过调用拆分器的toggleTargetCmp()方法解决了这个问题。嗯,我知道,这是一个私有方法,不应该使用,但我发现没有其他方法来存档。到现在为止还挺好。这一切都有效。

但是现在我想要隐藏分离器&占位符(如果单击工具栏中的按钮,则使用拆分器的getCollapseTarget()方法获取占位符ownet)。我尝试使用setVisible(false)适用于拆分器,但它对占位符效果不佳...在深入查看占位符实例后,我可以告诉它设置为hidden: true但它默认情况下使用hideMode: 'offsets'加上hiddenAnchestor: false,但未在API中记录。

根据 hideMode 的API文档,我尝试将其设置为'display' 在没有任何运气的情况下致电setVisible(false)之前,占位符仍然可见。

那么我怎么能隐藏这个平板电脑呢?或者甚至有更好的方式来归档这个?

1 个答案:

答案 0 :(得分:1)

你试过隐藏方法吗?它完全按照您的描述工作 - 隐藏区域和分割器。 在我的项目中,我这样做:

panel.hide();

其中panel是borderPanel项目之一。