2012-07-03 35 views
11

Paso de adobe flex a ext js 4 y noté que en Extjs los componentes están demasiado cerca. No hay espacio entre entonces. Esto se puede enfrentar con este ejemplo:Cómo insertar espacios entre componentes en el diseño de Ext js 4

var win = Ext.create('Ext.window.Window', { 
    layout: 'hbox', 
    height: 500, 
    width: 400, 
    title: 'hbox',  
    items: [ 
     Ext.create('Ext.button.Button', 
     { 
     text: 'My button 1', 
     width: 150 
     }), 
     Ext.create('Ext.button.Button', 
     { 
     text: 'My button 2', 
     width: 150 
     }) 
    ] 
}); 

win.show(); 

Los dos botones tienen un espacio cero entre sí.

¿Cómo establecer un espacio (hueco o nunca) de los componentes?

Gracias.

Respuesta

17

Use la configuración de margen:

Ext.onReady(function() { 
    var win = Ext.create('Ext.window.Window', { 
     layout: 'hbox', 
     height: 500, 
     width: 400, 
     autoShow: true, 
     title: 'hbox', 
     defaultType: 'button', 
     items: [{ 
      text: 'My button 1', 
      width: 150, 
      margin: '10 20 30 40' 
     }, { 
      text: 'My button 2', 
      width: 150, 
      margin: '40 30 20 10' 
     }] 
    }); 
}); 
+2

Para ahorrarte al buscar esto, los valores de margen corresponden a arriba, derecha, abajo, izquierda, por lo que "10 0 0 0" creará un margen de 10 px en la parte superior solamente. –

+2

Si desea el mismo margen para todos los elementos secundarios, agregue una propiedad 'defaults' al padre' default': {margin: '0 15 0 0'} '. Esto tiene más sentido en el diseño de una columna, por ejemplo. –

Cuestiones relacionadas