Problemas con un JList
Wen@s a tod@s. A ver si alguien me puede decir como se muestra o como se pone un scroll vertical en un JList.
He intentado hacerlo de la siguiente manera:
La declaracion del JList:
JList jList1;
Le pongo las caracteristicas :
listModel = new DefaultListModel();
jList1 = new JList(listModel);
jList1.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
jList1.setSelectedIndex(0);
jList1.setVisibleRowCount(5);
jList1.setSelectionBackground(new Color(201, 55, 69));
jList1.setSelectionForeground(Color.orange);
jList1.setBackground(Color.white);
jList1.setAlignmentX((float) 0.5);
jList1.setAutoscrolls(true);
jList1.setBorder(BorderFactory.createLineBorder(Color.black));
jList1.setDebugGraphicsOptions(0);
jList1.setMaximumSize(new Dimension(5, 5));
jList1.setOpaque(true);
jList1.setPreferredSize(new Dimension(0, 0));
jList1.setRequestFocusEnabled(true);
jList1.setToolTipText("");
jList1.setBounds(new Rectangle(88, 119, 93, 114));
JScrollPane listScrollPane = new JScrollPane(jList1);
y luego:
this.add(listScrollPane, BorderLayout.CENTER);
Es que no me aparece la barra del scroll. A ver si sabe alguien lo que me pasa. Que es que no se la manera de que me aparezca el Scroll y ya toy loco perdio.
Muchas gracias.
He intentado hacerlo de la siguiente manera:
La declaracion del JList:
JList jList1;
Le pongo las caracteristicas :
listModel = new DefaultListModel();
jList1 = new JList(listModel);
jList1.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
jList1.setSelectedIndex(0);
jList1.setVisibleRowCount(5);
jList1.setSelectionBackground(new Color(201, 55, 69));
jList1.setSelectionForeground(Color.orange);
jList1.setBackground(Color.white);
jList1.setAlignmentX((float) 0.5);
jList1.setAutoscrolls(true);
jList1.setBorder(BorderFactory.createLineBorder(Color.black));
jList1.setDebugGraphicsOptions(0);
jList1.setMaximumSize(new Dimension(5, 5));
jList1.setOpaque(true);
jList1.setPreferredSize(new Dimension(0, 0));
jList1.setRequestFocusEnabled(true);
jList1.setToolTipText("");
jList1.setBounds(new Rectangle(88, 119, 93, 114));
JScrollPane listScrollPane = new JScrollPane(jList1);
y luego:
this.add(listScrollPane, BorderLayout.CENTER);
Es que no me aparece la barra del scroll. A ver si sabe alguien lo que me pasa. Que es que no se la manera de que me aparezca el Scroll y ya toy loco perdio.
Muchas gracias.
Yo lo que no harÃa es establecer el tamaño de la lista, sino establecer el tamaño del JScrollPane. Prueba, y a lo mejor funciona (yo tengo un ejemplo en el que esto funciona).
¿Has probado a hacer :
<tt>JScrollPane listScrollPane = new JSrollPane();</tt>
<tt>// Tamaño del scroll etc</tt>
<tt>listScrollPane.getViewPort().add(jList1,null);</tt>
<tt> this.add(listScrollPane, BorderLayout.CENTER);</tt>
?
o incluso cambiando el orden de las dos últimas instrucciones. Te lo digo porque el diseñador de JBuilder lo hace asà y no me da ningún problema.
Bueno, espero que te ayude
¿Has probado a hacer :
<tt>JScrollPane listScrollPane = new JSrollPane();</tt>
<tt>// Tamaño del scroll etc</tt>
<tt>listScrollPane.getViewPort().add(jList1,null);</tt>
<tt> this.add(listScrollPane, BorderLayout.CENTER);</tt>
?
o incluso cambiando el orden de las dos últimas instrucciones. Te lo digo porque el diseñador de JBuilder lo hace asà y no me da ningún problema.
Bueno, espero que te ayude
Primero declara una JList y luego un ScrollPane:
JList lista;
ScrollPane barra;
En el constructor pone:
lista=new JList();
barra=new JScrollPane(lista);
JList lista;
ScrollPane barra;
En el constructor pone:
lista=new JList();
barra=new JScrollPane(lista);
jaja vine a esta pagina con el mismo problema, ya lo e resuelto, si te sale en blanco es por el orden. si inicializas antes el scroll si haber inicializado el list se te keda enano.
si lo haces en el orden correcto, aunq los valores del list sean blancos se te keda bien dimensionado.
Weno espero haber aportado algo, saludoooos
si lo haces en el orden correcto, aunq los valores del list sean blancos se te keda bien dimensionado.
Weno espero haber aportado algo, saludoooos
