Ciao, seguendo alcuni esempi qui su Html.it e altri siti, non riesco a mettere lo scrollPane alla mia textArea. Perché? Eppure l'esempio che ho scaricato va che è una meravoglia!
Ecco il codice: vedete fin fondo lo scrollPane:
codice:
package mercurio;
import java.awt.*;
import javax.swing.*;
public class Mercurio extends JFrame
{
private static final long serialVersionUID = 1L;
private final String TITOLO_APPLICAZIONE = "Mercurio";
private final String nomeIconaFrame = "icone//iconaProgrammaPrincipale.gif";
private JPanel jContentPane;
private JButton avviaRicerca;
private JButton chiudiProgramma;
private JTextArea areaTesto;
private JProgressBar barraProgressiva;
/**
* Costruisce il pulsante di "Avvia ricerca"
*/
private JButton costruisciAvviaProgramma()
{
final String AVVIA_RICERCA = "Ricerca dispositivi";
final String nomeFile = "icone//avviaRicerca.gif";
ImageIcon icona = new ImageIcon(nomeFile);
avviaRicerca = new JButton();
avviaRicerca.setText(AVVIA_RICERCA);
avviaRicerca.setIcon(icona);
return avviaRicerca;
}
/**
* Costruisce il pulsante di "Chiudi Programma"
*/
private JButton costruisciChiudiProgramma()
{
final String CHIUDI_PROGRAMMA = "Chiudi programma";
final String nomeFile = "icone//chiudiProgramma.gif";
ImageIcon icona = new ImageIcon(nomeFile);
chiudiProgramma = new JButton();
chiudiProgramma.setText(CHIUDI_PROGRAMMA);
chiudiProgramma.setIcon(icona);
return chiudiProgramma;
}
/**
* Costruisce l'area di testo
*/
private JTextArea costruisciAreaTesto()
{
areaTesto = new JTextArea(20, 40);
areaTesto.setLineWrap(true);
areaTesto.setEditable(false);
return areaTesto;
}
/**
* @param args Variabili di entrata (non necessarie)
*/
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
Mercurio thisClass = new Mercurio();
thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
thisClass.setVisible(true);
}
});
}
/**
* This is the default constructor
*/
public Mercurio()
{
super();
initialize();
}
/**
* This method initializes this
*
* @return void
*/
private void initialize()
{
this.setName(TITOLO_APPLICAZIONE);
this.setTitle(TITOLO_APPLICAZIONE);
this.setSize(500, 500);
Image icona = Toolkit.getDefaultToolkit().getImage(nomeIconaFrame);
this.setIconImage(icona);
this.setLocationRelativeTo(null);
this.setResizable(false);
this.setContentPane(getJContentPane());
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
/**
* This method initializes jContentPane
*
* @return javax.swing.JPanel
*/
private JPanel getJContentPane()
{
if (jContentPane == null)
{
jContentPane = new JPanel();
jContentPane.setLayout(new FlowLayout());
avviaRicerca = costruisciAvviaProgramma();
chiudiProgramma = costruisciChiudiProgramma();
areaTesto = costruisciAreaTesto();
JScrollPane spane = new JScrollPane(areaTesto);
spane.getHorizontalScrollBar();
spane.getVerticalScrollBar();
jContentPane.add(avviaRicerca);
jContentPane.add(chiudiProgramma);
jContentPane.add(areaTesto);
jContentPane.add(spane);
for(int i=0; i<100; i++)
{
areaTesto.append("Prima riga" + "\n");
areaTesto.append("Seconda riga" + "\n");
}
}
return jContentPane;
}
}