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

sra*_*sra 5 extjs extjs4 extjs-mvc extjs4.1

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

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

基于hideMode的API文档,我尝试将它设置为'display' 在调用之前setVisible(false)没有任何运气,占位符仍然保持可见.

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

mik*_*mik 1

您尝试过隐藏方法吗?它的工作原理与您所描述的完全一样 - 隐藏区域和分割器。在我的项目中我是这样做的:

panel.hide();
Run Code Online (Sandbox Code Playgroud)

其中 panel 是 borderPanel 项目之一。