W programie chodzi o to, że do JTextArea przekazuję jakąś treść i mogę ją w tym polu zmodyfikować. Naciśnięcie przycisku na dole formy powoduje zamknięcie okna i wyświetleniu w konsoli tego co było w JTextArea. I problem polega właśnie na tym, że nie wyświetla zmodyfikowanego tekstu.
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Edycja extends JFrame{
public JTextArea textArea;
public JScrollPane scroll;
public JButton ok;
public JPanel panel;
public String s;
public Edycja(String fileName, String zawartosc){
setTitle("Modyfikacja: " + fileName);
panel = new JPanel();
panel.setLayout(new BorderLayout());
textArea = new JTextArea(30, 50);
ok = new JButton("Zapisz zmiany");
ok.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
s=new String(textArea.getText());
dispose();
}
});
panel.add(ok,BorderLayout.SOUTH);
textArea.append(zawartosc);
scroll = new JScrollPane(textArea);
textArea.setEditable(true);
panel.add(scroll,BorderLayout.CENTER);
getContentPane().add(panel);
pack();
setLocation(230, 90);
setVisible(true);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
<b>System.out.println(s); // tu nie działa</b>
}
public static void main(String[] args){
new Edycja("test","jhfglkhdflgjdflj");
}
}