Java JTextArea Hinzufügen newline

So, ich bin ratlos. Ich, aus irgendeinem Grund, scheinen, denken Sie daran, dass Java macht seltsame Dinge, wenn Sie versuchen, hinzufügen neuer Zeilen zu Stopfen... also denke ich, dass vielleicht hier das problem.

Dieser code funktioniert nicht, wie Sie es erwarten:

public void displayText(KeyEvent k){
    txt = inputArea.getText();
    outputArea.setText(txt);
    if(k.getKeyCode() == 10) //return
        outputArea.setText(txt + "\n");
}

Können Sie überprüfen, um zu sehen, wenn ich die getKeyCode() festlegen, um die richtige Zahl, aber ich bin mir fast sicher, dass das Teil korrekt ist.

BEARBEITEN:
Vielen Dank; ich vergaß über diese Konstanten...

Und leider funktioniert es aber nicht wirklich. if(k.getKeyCode() == k.VK_ENTER) gibt true zurück, (das ist eine Tatsache), aber "\n" nicht den Zeilenumbruch.

BEARBEITEN (take two):
Vollständige code:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class GUI extends JFrame implements KeyListener{
    private JFrame frame;
    private JTextField inputArea;
    private JTextArea outputArea;
    private String txt;

    public GUI(){
        frame = new JFrame("My Frame");
        inputArea = new JTextField(1);
        outputArea = new JTextArea(5,10);
        inputArea.addKeyListener(this);
        outputArea.setLineWrap(true);
        txt = "";

        frame.setLayout(new GridLayout(2,10));
        frame.add(inputArea);
        frame.add(outputArea);
        frame.setVisible(true);
        frame.pack();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }

    public void keyPressed(KeyEvent k){}
    public void keyTyped(KeyEvent k){}

    public void keyReleased(KeyEvent k) {
        displayText(k);
    }

    public void displayText(KeyEvent k){
        txt = inputArea.getText();
        outputArea.setText(txt);
        if(k.getKeyCode() == KeyEvent.VK_ENTER)
            outputArea.append("\n");
            //outputArea.setText(txt + "\n");
    }
}

Dann eine weitere Klasse mit der main:

public class Driver {
    public static void main(String[] args){ 
        GUI gui = new GUI();
    }
}

BEARBEITEN:
Im Grunde bin ich versucht zu emulieren Google Wave die Möglichkeit text zu versenden, bevor der Benutzer die EINGABETASTE drückt.

InformationsquelleAutor Pandemic21 | 2009-12-08
Schreibe einen Kommentar