2016-08-24 54 views
1

我有一个树形面板和一个tabpanel。每个树面板节点都对应一个tabpanel面板。当我点击一个节点时,它会突出显示并打开标签面板。当我关闭标签面板时,同样的方法应该删除节点的高亮显示。我尝试了很多,但无法成功。对此有何帮助?当相应的选项卡关闭时移除突出显示的树节点

https://fiddle.sencha.com/#fiddle/1foo

你可以看到Abc.view.main.explorer.AbcTabPanel组件的监听器。

回答

1

看看这个:https://fiddle.sencha.com/#fiddle/1fq0

你的榜样扔了几个错误,我已经定格在我的例子,但我已经基本上完成了是这样的:我已经附上close监听器创建选项卡,检查TreeList选择(getSelection)。如果选项卡的记录是当前选择,请将选择设置为null。 TreeList将更新其布局并且不重视该记录。

我希望这有助于!

p.s.我也做了一些小的代码更改。这只是我的编码风格。如果你不喜欢它们,请忽略它们:)

+0

太棒了。继承你的一些编码标准也:)。如果您看到关闭面板的时候,前面的面板会显示出来,我可以在treelist中突出显示该面板吗? – Hacker

+0

这完全有可能。您可以使用以下其中一个事件: * tabPanel [tabchange](http://docs.sencha.com/extjs/6.0.2-classic/Ext.tab.Panel.html#event-tabchange)事件。 * tab [activate](http://docs.sencha.com/extjs/6.0.2-classic/Ext.Component.html#event-activate) –

+1

我更新了Fiddle示例以更新在treelist中的选择当改变标签。看看'activate'事件处理程序。 尽管你可能想重构tab事件处理程序设置。设置这些事件处理程序会创建闭包,因为它们使用处理函数外部的'view'和'record'变量。 –