0
我想在我的ExtJS4.1應用程序中實現某種任務欄,該應用程序包含所有浮動組件(如窗口)的按鈕。如果窗口已創建,則最小化/最大化按鈕應顯示在任務欄中。ExtJS中是否有創建組件的全局事件?
那麼,有沒有一箇中心事件告訴我一個(浮動)組件已經創建或已經顯示?
我想在我的ExtJS4.1應用程序中實現某種任務欄,該應用程序包含所有浮動組件(如窗口)的按鈕。如果窗口已創建,則最小化/最大化按鈕應顯示在任務欄中。ExtJS中是否有創建組件的全局事件?
那麼,有沒有一箇中心事件告訴我一個(浮動)組件已經創建或已經顯示?
我還沒有測試過這個,但Ext.ComponentManager有一個名爲'all'的公共屬性,它是所有組件的集合。你可以像onAvailable()那樣添加一個'add'監聽器。
Ext.ComponentManager.all.on('add', function(map, key, item) {
// Check if item is a Window and do whatever
});
組件不只是創建/顯示自己,你必須告訴他們這樣做。因此,當您創建組件時,將該信息傳遞到您的任務欄上,以便了解它。 – 2012-08-14 07:43:14
是的,這是可行的,但我不希望組件的創建者知道任務欄。 – 2012-08-14 08:12:36
他們不需要直接瞭解對方,你可以在中間有一些調解員班級來指導事情。這將比試圖傾聽每個組件創建更加清潔。 – 2012-08-14 08:57:38