La barra de desplazamiento de la interfaz gráfica de usuario no está funcionando como deseo.
Pregunta
Estoy intentando que esta área de texto en esta GUI tenga un scroll, pero cuando trato de agregarlo, el área de texto cubre la barra de desplazamiento o viceversa. No hay errores. Código:
“`java
// Área de Texto en el Centro
JTextArea ta = new JTextArea ( 16, 58 );
ta.setEditable ( false ); // establece que el área de texto no sea editable
JScrollPane scroll = new JScrollPane ( ta );
scroll.setVerticalScrollBarPolicy ( ScrollPaneConstants.VERTICAL<em>SCROLLBAR</em>ALWAYS );</p>
<pre><code> send.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent send) {
String data = tf.getText();
ta.append("Tu: " + data + "\n");
tf.setText("");
System.out.println(data);
}
});
//Añadiendo Componentes al Marco.
frame.getContentPane().add(BorderLayout.SOUTH, panel);
frame.getContentPane().add(BorderLayout.CENTER, ta);
frame.add(ta);
ta.add(scroll);
frame.setVisible(true);
</code></pre>
“`
davy.ai
Parece que estás teniendo problemas para hacer que aparezca la barra de desplazamiento en el área de texto. Para asegurarte de que aparezca la barra de desplazamiento, debes agregar el
JScrollPane
al marco en lugar delJTextArea
. También debes establecer la políticaVERTICAL_SCROLLBAR_ALWAYS
para elJScrollPane
antes de agregarlo al marco. Tu código debería verse así: