Java - Scrolls JScrollPane

 
Vista:

Scrolls JScrollPane

Publicado por The Emulator (14 intervenciones) el 23/03/2007 02:47:00
Hola

Hay alguna forma de decirle a un JScrollPane que solo implemente la barra vertical??

Les explico que es lo que trato de hacer.

Tengo un JPanel en el cual voy agregando botones este panel tiene un FlowLayout como sabemos este tipo de Layout distribuye los objetos en forma linea y cuando llega al border del panel hace como un salto de linea para mostrar los siguientes controles, pero si yo vinculo ese panel al JScrollPane lo que hace es que los botones que coloque siempre queden en una sola fila, nunca va a hacer el salto de linea ya que al tener el JScrollPane vinculado aparece el Scroll Horizontal, lo que quiero hacer es que me deshabilite el scroll horizontal y que a medida que yo agrege botones si este boton sobre pasa el ancho del panel haga un salto de linea y se ubique debajo de los otros y que cuando ya este lleno el panel es cuando debe mostrar el scroll vertical para que permita al usurio desplazarce hacia abajo.

Espero alguien me pueda ayudar.

Saludos y gracias.
http://www.theemulator.tk
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Scrolls JScrollPane

Publicado por Kike (72 intervenciones) el 23/03/2007 19:29:50
Lo que puedes hacer es definir un objeto JScrollPane es incluirle algo similar a esto:

JScrollPane deslizador = new JScrollPane();
deslizador.setHorizontalScrollBarPolicy( JScrollPane.HORIZONTAL_SCROLLBAR_NEEDED );
deslizador.setVerticalScrollBarPolicy( JScrollPane.VERTICAL_SCROLLBAR_NEEDED );
deslizador.setViewportView( elPanel );
getContentPane().add( deslizador );

Con este código se establece que las barras de desplazamiento aparezcan en el panel cuando sea necesario, como tú dices, cuando los objetos rebasen el tamaño del borde del contenedor FlowLayout. Revisa la clase JScrollPane para más opciones.

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Scrolls JScrollPane

Publicado por The Emulator (14 intervenciones) el 24/03/2007 03:49:43
Hola

Gracias por responder pero creo que no me explique bien lo que yo quiero es que el ScrollPanel solo trabaje con el Scroll Vertical que el Scroll Horizontal no funciones o mejor dicho que no lo implemente.

Un ejemplo mas claro es esta caja de texto donde tu escribes el mensaje en en este foro, como vez cuando escribes una linea larga en cuanto llegas al final de la linea se hace un salto automatico de linea y no te permite seguir derecho en cuanto llenas todo el cuadro de texto es cuando aparece el Scroll Vertical para poder desplazarse hacia arriba y abajo pero nunca horizontalmente.

Temporalmente lo he cuadrado ya no usando un FlowLayout ya que este siempre coloca los controles horizontalmente asi que lo remplaze por un BoxLayout que permite colocar los controles en forma vertical osea varias filas.

Saludos y gracias
http://www.theemulator.tk
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Yacoobs
Val: 231
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

RE:Scrolls JScrollPane

Publicado por Yacoobs (10 intervenciones) el 28/10/2018 16:34:07
Es muy sencillo solamente tienes que usar el metodo: Crea un salto automático de linea pero no respeta la ortografía.
setLineWrap(true);

Con este método añadido hacemos el salto y respetamos la ortografía:
setWrapStyleWord(true);

Mas vale tarde que nunca :) Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Scrolls JScrollPane

Publicado por Abraham Jmz (1 intervención) el 24/06/2015 19:20:53
Hola disculpa esa vez me enseñaron un comando que hacía que tu ScrollPane siempre estuviera por default hasta abajo, era en el programa de un chat como constantemente se actualizaba existia un comando que hacia que tu panel siempre estuviera con el ultimo mensaje recibido sabes cual es? :( ayuda pls
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar