IZZO
Mitglied
Hallo Leute!
ich habe lange im Internet gesucht aber finde keine Lösung. Ich möchte gerne eine Textdatei erstellen, einlesen von einem JTextArea aus und nach erneutem Programmstart soll die Textdatei ausgelesen werden und das JTextArea damit gefüllt werde. Das mit dem einlesen usw. klappt wunderbar nur beim Auslesen haperts. Genauer gesagt in Zeile 119. Dort unterstreicht er mir die Variable, meint er kenne die nicht obwohl ich sie doch als Klassenvariable definiert ist.
Ignoriert meine Kommentare im Code sind teilweise falsch und/oder noch nicht aktualisiert.
Hier der Code
ich habe lange im Internet gesucht aber finde keine Lösung. Ich möchte gerne eine Textdatei erstellen, einlesen von einem JTextArea aus und nach erneutem Programmstart soll die Textdatei ausgelesen werden und das JTextArea damit gefüllt werde. Das mit dem einlesen usw. klappt wunderbar nur beim Auslesen haperts. Genauer gesagt in Zeile 119. Dort unterstreicht er mir die Variable, meint er kenne die nicht obwohl ich sie doch als Klassenvariable definiert ist.
Ignoriert meine Kommentare im Code sind teilweise falsch und/oder noch nicht aktualisiert.
Hier der Code
Code:
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class IzIProg extends JFrame implements ActionListener {
//Die Variable neuframe (welche ein JFrame ist) wird angelegt und die Farbe "bla" (rgb) definiert
JFrame neuframe = new JFrame();
JTextArea textfeld = new JTextArea();
Color bla = new Color (200, 10, 20);
JFrame frame = new JFrame();
JButton button = new JButton("Druecken");
JButton neubutton = new JButton("Speichern");
public IzIProg() {
//Hier wird das Hauptfenster "frame" erstellt
frame.setTitle("GEH");
frame.setBounds(300, 100, 800, 800);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLayout(null);
frame.setVisible(true);
//Hier wird der Button "Druecken" erstellt
button.setBounds(350, 375, 100, 50);
button.setBackground(bla);
button.addActionListener(this);
//Hier wird der Button "Druecken" dem Fenster "frame" hinzugefügt
frame.add(button);
}
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("Druecken")){
neuframe();
if (!neuframe.isShowing()){
neuframe.setVisible(true);
}
else {
//Der Fehlerdialog wird erstellt
JOptionPane.showMessageDialog(
neuframe, "Sie können das Fenster nicht zweimal öffnen",
"Das Fenster ist schon offen",
JOptionPane.ERROR_MESSAGE);
}
}
String strg = textfeld.getText();
if(e.getActionCommand().equals("Speichern")){
try
{
File file = new File("C:/geh/hallo.txt");
FileWriter fw = new FileWriter(file);
fw.write(strg);
fw.flush();
fw.close();
}
catch( IOException ioe )
{
ioe.printStackTrace();
}
}
}
//Methode "neuframe"
public void neuframe() {
neuframe.setSize(400, 400);
neuframe.setLayout(null);
neuframe.setResizable(true);
neuframe.setTitle("2. Fenster");
neubutton.setBounds(50, 50, 100, 50);
neubutton.addActionListener(this);
neuframe.add(neubutton);
textareaerstellen();
}
public void textareaerstellen() {
textfeld.setBounds(0, 200, 200, 50);
textfeld.setLineWrap(true);
textfeld.setWrapStyleWord(true);
textfeld.setText(strg);
JScrollPane pane = new JScrollPane(textfeld);
pane.setBounds(200, 200, 100, 100);
neuframe.add(pane);
}
public static void main(String[] args) {
//ein Objekt der Klasse IzIProg wird erzeugt
new IzIProg();
}
}