Sokat gondolkodtam azon, hogy miért így oldották meg az autoHeight-ot?
Miért használnék valamikor is autoHeight=false-t? ("Nem tudom a magasságot, de nem is szeretném, hogy az ExtJS kiszámolja!")
Vegyünk három esetet:
- Megadom a konkrét magasságot, ekkor az autoHeight érték nem számít.
- Olyan konténerben van az elem, ahol a konténer határozza meg a magasságot. Itt az autoHeight igaz érték elrontja az elem magasságát. Vagy bug, vagy ficsör, mindegy, a lényeg, hogy nem használható.
- Végül, az az eset, amikor sem az elemnek nincs megadva a magasság, sem a konténer nem határoz meg magasságot. De ilyen esetben nem lenne alapértelmezett, hogyha nincs magasság, akkor az ExtJS magától meghatározza?
Valahogy az az ember érzése, hogy felesleges ez a property, ExtJS-nek is kellene tudnia, hogy mikor kell automatikus magasság.
A második, illetve a harmadik esetre egy-egy rövid példa:
width: 300, height: 300,
layout: 'fit',
items: [{
bodyStyle:'background:green',
autoHeight:true
}]
})).show();
(new Ext.Window({
width: 300, height: 300,
layout: 'border',
items: [{
region:'north',
items:[ new Ext.Button({text:'Szia Világ!'}) ],
//autoHeight: true
}, {
region: 'center',
bodyStyle:'background:green',
}]
})).show();