2011-10-01 172 views
5

Estoy desarrollando una pequeña aplicación de escritorio en NetBeans. En mi interfaz de usuario, coloco un JPanel y pongo un solo JLabel en él. El contenido de este JLabel se genera dinámicamente, por lo que si el contenido es muy grande, se quedará fuera de la pantalla. Así que hay alguna manera de especificar un tamaño fijo para el JPanel y, por supuesto, ScrollBars debería aparecer cuando el texto exceda el tamaño de pantalla.NetBeans: cómo agregar ScrollBar a JPanel

Respuesta

6

Use JScrollPane para contener su gran JPanel.

2

so in case when the contents are very large it goes out of screen, tal vez usted tiene que buscar TextComponents como JTextArea or JEditorPane, tutorial contiene ejemplo, incluyendo el uso básico de JScrollPane

7

Tendrá que sólo tiene que pasar a la referencia de componente JScrollPane Constructor. Funcionará bien. Definitivamente puede usar JScrollPane El siguiente es el ejemplo de sudo del JScrollPane para JPanel de mi proyecto anterior. Espero que te sea útil.

import javax.swing.*; 
import java.awt.*; 

public class Frame01 
{ 
    public static void main(String[] args){ 
     SwingUtilities.invokeLater (new Runnable() 
     { 
      public void run() 
      { 
       JFrame frame = new JFrame("panel demo"); 
       frame.setDefaultCloseOperation (JFrame.DISPOSE_ON_CLOSE); 

       JPanel panel = new JPanel(); 
       Container c = frame.getContentPane(); 
       panel.setSize(100,100); 
       panel.setLayout(new GridLayout(1000,1)); 
       for(int i = 0; i<1000;i++) 
       panel.add(new JLabel("JLabel "+i)); 

       JScrollPane jsp = new JScrollPane(panel); 
       c.add(jsp); 
       frame.setSize(100,100); 
       frame.setVisible(true); 
      } 
     }); 
    } 
} 
1

En el navegador, haga clic en JPanel con el botón derecho del mouse -> Enclose In -> Panel de desplazamiento.

¡Hecho! Ahora tiene los rolos