Button mit Speicher-Funktion

Bitte aktiviere JavaScript!
Hallo
bin neu im Bereich GUI Programmierung und möchte nun wissen wie man mit einem Button eine Speicher Funktion eingibt dass z.B. die Änderungen in einem JTextField gespeichert werden und man nicht bei jeder Öffnung des Programms den text neu eingeben muss. Habe windowBuilder benutzt
 
Zuletzt bearbeitet:
Naja, Du fügst dem Button halt einen ActionListener hinzu und dort machst Du, was Du lustig bist, also z. B. den Feldinhalt in eine Datei speichern.

Java:
import java.io.*;
import javax.swing.*;

public class Test {
    private String text;

    private JTextField textField;

    public void run() {
        loadFromDisk();
        textField = new JTextField(text);
        textField.setColumns(50);
        JButton button = new JButton("Speichern");
        button.addActionListener(e -> saveToDisk());

        JPanel content = new JPanel();
        content.add(textField);
        content.add(button);

        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        frame.add(content);
        frame.pack();
        frame.setVisible(true);
    }

    private void saveToDisk() {
        text = textField.getText();

        try(PrintWriter writer = new PrintWriter(new FileWriter("daten.dat"))) {
            writer.println(text);
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }

    private void loadFromDisk() {
        File file = new File("daten.dat");
        if (!file.exists()) { return; }

        try(BufferedReader reader = new BufferedReader(new FileReader("daten.dat"))) {
            this.text = reader.readLine();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> new Test().run());
    }
}
 
Du sollst den Code auch nicht bei Dir einfügen. Das ist als Beispiel gedacht, damit Du siehst, wie so etwas im Zusammenhang funktionieren kann. Sprich: schau ihn Dir an, wie es funktioniert und dann baust Du so etwas in Deinem Code nach.
 
und wenn ich den Code nicht verstehe?
Was verstehst Du denn nicht? Beim Start wird loadFromDisk() aufgerufen, das lädt den gespeicherten Text - sofern existent - aus einer Datei. Beim Klick auf den Button wird saveToDisk() aufgerufen, das holt sich den Text aus dem Textfeld und speichert diesen dann in die Datei. Mehr ist das nicht.
 
Du holst dir die Werte aus den Textfelder und Checkboxen und speicherst diese. Das ganze geht analog zu dem Beispiel von @mihe7
Ehrlich.. Wenn du das nicht verstehst dann geh 2 Schritte zurück.. Gui scheint noch etwas zu hoch für dich zu sein. Lern erstmal die Grundlagen
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben