我注意到ExtJS 3.x和4.x之間的一個主要區別是渲染/佈局計算是如何處理在包含顯示元素的元素內渲染的組件:none(不是一個Ext創建/監視的包含元素)。在3.x中,在顯示包含元素時,它所包含的Ext組件將被正確渲染並根據我爲它設置的任何尺寸進行調整。ExtJS 4 - 渲染最初隱藏的組件
但是,在4.x中,當顯示其包含的元素時,該相同的組件將根本不顯示,並且高度和寬度都爲零。如果我對.setSize()進行了調用,那麼它將被正確顯示。問題是,在我的應用程序中,沒有辦法能夠通過所有可能導致隱藏組件顯示的事件,並添加代碼以確保手動強制重新計算其佈局。
所以我的問題是,有沒有辦法在4.x的所有組件在這種情況下獲得3.x的行爲?
不幸的是,使用該框架來管理整個頁面佈局,對於正在處理的應用程序而言,這不是一個選項。雖然事件代表團的想法很有趣,但它看起來有點倒退......因爲它需要是非extjs元素通知組件,它包含的組件現在可見並且它們應該重新計算它們的佈局,對吧? –
是的,就是這個想法。看看Saki的例子,我相信他正是那樣做的。 – dbrin