2016-08-24 53 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'變量。 –