2012-08-14 35 views
0

我想在我的ExtJS4.1應用程序中實現某種任務欄,該應用程序包含所有浮動組件(如窗口)的按鈕。如果窗口已創建,則最小化/最大化按鈕應顯示在任務欄中。ExtJS中是否有創建組件的全局事件?

那麼,有沒有一箇中心事件告訴我一個(浮動)組件已經創建或已經顯示?

+0

組件不只是創建/顯示自己,你必須告訴他們這樣做。因此,當您創建組件時,將該信息傳遞到您的任務欄上,以便了解它。 – 2012-08-14 07:43:14

+0

是的,這是可行的,但我不希望組件的創建者知道任務欄。 – 2012-08-14 08:12:36

+1

他們不需要直接瞭解對方,你可以在中間有一些調解員班級來指導事情。這將比試圖傾聽每個組件創建更加清潔。 – 2012-08-14 08:57:38

回答

2

我還沒有測試過這個,但Ext.ComponentManager有一個名爲'all'的公共屬性,它是所有組件的集合。你可以像onAvailable()那樣添加一個'add'監聽器。

Ext.ComponentManager.all.on('add', function(map, key, item) { 
    // Check if item is a Window and do whatever 
});