Foro

TabPanel ¿Como centrar su contenido?

0
Hola primero que nada un saludo y los felicito por desarrollar esta tremenda pagina. Mi pregunta es la siguiente ¿[b]como puedo centrar el contenido de los TabPanel[/b]?, por ejemplo que dentro de un tab se encuentre un gridPanel de un tamaño en pixeles definidos y que este gridPanel siempre este centrado tanto verticalmente como horizontalmente, a lo mejor es una propiedad y seria simple la respuesta pero de verdad ya tengo tiempo con esta duda desde la versión 2.0 y todavía no lo logro hacer, en la versión 2.2 es que creo que se le logra de manera mas fácil pero todavía no lo he probado. Gracias de manera anticipada a todos los que me puedan ayudar...
0
Hola gened. Se puede hacer de muchas formas, acá va una.
x : Number
The local x (left) coordinate for this component if contained within a positioning container.
y : Number
The local y (top) coordinate for this component if contained within a positioning container.
si activas estas propiedades en el grid, o ventana, no importa donde este tu grid, ya sea en un div, iframe, Panel, o una ventana de navegador ahi puedes manejar la pocición de tus grids <!-- s:D --><!-- s:D -->. espero que te sirva !
0
Hola mehparra muchas gracias por tu respuesta. Si de esa forma lo puedo hacer, pero lo que verdaderamente deseo es que siempre permanezca en el centro del contenedor, es decir que si en una maquina hay una resolución de pantalla diferente a pesar de que el tamaño del gridPanel por ejemplo sea en pixeles este pueda verse dentro del contenedor del TabPanel si es presiso con los escroll, pero cuando la resolución de la pantalla lo permita este este centrado en el contenedor del TabPanel. Algo parecido como cuando se crea un objeto window que siempre sale centrado en la pantalla así esta se resise, algo parecido quiero hacer pero dentro del contenedor de un Tab.
0
Hola, has probado a usar el método center()?
Ext.fly('idGridPanel').center();
Un saludo
0
Hola jucahoca, gracias por tu respuesta. Probé lo que me dijiste pero no me sirve ya que este método me centra el componente pero es con respecto a la pantalla y no dentro del contenedor que yo deseo. Bueno sigo esperando a ver si hay una solución muchas gracias a todos los que puedan ayudarme.
0
He probado con el siguiente ejemplo que quizás pueda servirte:
               //
               // Para simplificar he usado un Panel en lugar de un Grid
               //
               var panel = new Ext.Panel ({
                    id     : 'idPanel',
                    height : 50,
                    width  : 50,
                    html   : 'Hola Mundo'
                }) //panel
                
                var tabs = new Ext.TabPanel({
                    id: 'idtabs',
                    height: 300,
                    width : 600,
                    renderTo: Ext.getBody(),
                    activeTab: 0,
                    items: [{
                        title: 'Tab 1',
                        items: [panel]
                    }, {
                        title: 'Tab 2',
                        html: 'Otro TAB'
                    }]
                }) //tabs
                
                var elContainer = Ext.get('idtabs')
                Ext.fly('idPanel').center(elContainer)
Prueba y nos cuentas
0
de acuerdo con la documentación [b]center[/b]( [Mixed centerIn] ) : void Centers the Element in either the viewport, or [i]another Element[/i]. Parameters: * centerIn : Mixed (optional) The element in which to center the element. Returns: * void La solución que te ha dado jucahoca te debería funcionar correctamente <!-- s;) --><!-- s;) --> saludos
0
Muchísimas gracias[b] jucahoca y stock[/b], jucahoca probé tu ejemplo y hace exactamente lo que estaba deseando de verdad muchísimas gracias. Gracias también al resto que colaboro. <!-- s:P --><!-- s:P --> <!-- s:mrgreen: --><!-- s:mrgreen: --> <!-- s:lol: --><!-- s:lol: -->

¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook

Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.