2009-11-03 13 views
7

Alerta de Novato:Dimensionando una celda HorizontalPanel

He estado buscando furiosamente una forma de dimensionar una celda particular de un HorizontalPanel.

Lo que estoy tratando de hacer es implementar un Panel Horizontal de 2 celdas y establecer la celda izquierda para decir 200px. Sin embargo, estoy tratando de hacer que la celda correcta llene el resto de la ventana, no el contenido de sus celdas.

no puedo ver el bosque por los árboles, por favor ayuda ...

Respuesta

9
  HorizontalPanel horizontalPanel=new HorizontalPanel(); 
     horizontalPanel.setWidth("100%"); 
     Widget widget1=new Widget(); 
     Widget widget2=new Widget(); 
     horizontalPanel.add(widget1); 
     horizontalPanel.add(widget2); 
     horizontalPanel.setCellWidth(widget1,"200"); 

En el código anterior, si el ancho de la widget2 se establece en 100%, entonces widget2 llenará resto del window.If ancho de la widget2 no es 100% no va a llenar el resto de la ventana. Simplemente verifique el ancho de su segundo contenido de celda. No debe ser 100%.

+0

Solo un detalle adicional que debería tener en cuenta: si el widget en la segunda celda está basado en un DIV, entonces será 100% ancho para que cambie de tamaño con la ventana. –

3

O si usted está haciendo esto con UiBinder:

<g:HorizontalPanel width="100%"> 
    <g:cell width="200"> 
     <!-- Stuff --> 
    </g:cell> 
    <g:cell> 
     <!-- More Stuff --> 
    </g:cell> 
</g:HorizontalPanel> 
5

encontré que necesitaba para ajustar la respuesta de Damo ligeramente para hacer este trabajo. Tiene que establecer el tamaño explícito del widget en la primera celda. Pero luego configure la segunda celda para que tenga un ancho del 100%.

<g:HorizontalPanel width="100%"> 
    <g:cell> 
     <g:SimplePanel width="200px"/> 
    </g:cell> 
    <g:cell width="100%"> 
     <g:SimplePanel width="100%"/> 
    </g:cell> 
</g:HorizontalPanel> 
Cuestiones relacionadas