JTextArea + neue Zeile

Status
Nicht offen für weitere Antworten.

jawohl

Mitglied
Also ich habe ein JTextarea in eine jtable gepackt. Das klappt mal wunderbar. Nun hab ich aber das folgende problem:

der Text den ich habe zb ("jawohl\njawohl2\njawohl3) wird wunderbar in 3 zeilen angezeigt. Wenn ich jetzt aber einen Doppelclick auf die Area mach schreibt sie ihn mir in eine Zeile und blendet die \n aus.

Dann möchte ich dass ich bei enter-drücken eine neue Zeile eröffne und bei BACK (Ich hoffe so heißt die Taste) - drücken eine Zeile gelöscht wird. Falls dies zu aufwendig gehen 2 Buttons auch ;). Welche Events brauch ich da so um dies realisieren zu können:
ich hätte da mal an einen keyEvent gedacht - aber dies bezieht sich doch wieder auf die ganze applikation oder?
 

dotlens

Top Contributor
jawohl hat gesagt.:
ich hätte da mal an einen keyEvent gedacht - aber dies bezieht sich doch wieder auf die ganze applikation oder?
Der KeyEvent wird von der Komponente ausgelöst, von der ein KeyListener hinzugefügt wurde. Also musst du einfach:
Code:
JTextArea area = new JTextArea("text1\ntext2\ntext3\n");
area.addKeyListener(this);
zur Textarea einfügen und den KeyListener richtig implementieren.
 
G

Guest

Gast
statt \n kannst du auch System.getProperty("line.separator") verwenden, dadruch wird der Zeilenumbruch plattformunabhängig. Windows und Linux haben da ja zB auch Unterschiede
 
G

Guest

Gast
Also bis jetzt hab ich mal das in meinem Renderer für die Tabelle geschrieben. Compilieren usw. lässt er sichwunderbar, nur macht er nicht das was ich mir bei TastenDruck wünsche. Er schreibt einfach "q" und das wars.
Weiß jemand woran dasliegen könnte? und wie ich einen Enterdruck schreiben müsste im Code.

Wäre wiedermal für jede hilfe mehr als dankbar.


Hier der Renderer
Code:
public class MultiLineRenderer extends JTextArea implements TableCellRenderer
{
    public MultiLineRenderer() {
    	setLineWrap(false);
    	setWrapStyleWord(true);
    	setEditable(true);
    	setOpaque(true);
  }
  
	
	public Component getTableCellRendererComponent(JTable table, Object obj, boolean isSelected,
	 						boolean hasFocus, int row, int column) {
	 							
	    if (isSelected)
	    {
      		setForeground(table.getSelectionForeground());
      		setBackground(table.getSelectionBackground());
	    }	 
    	    else
     	    {
      		setForeground(table.getForeground());
      		setBackground(table.getBackground());
    	    } 
    	    
    	    setFont(table.getFont());
    if (hasFocus)
    {
	setBorder( UIManager.getBorder("Table.focusCellHighlightBorder") );
	
        if (table.isCellEditable(row, column))
        {
        	setForeground( UIManager.getColor("Table.focusCellForeground") );
        	setBackground( UIManager.getColor("Table.focusCellBackground") );
        }
    }
    else
    {
       	setBorder(new EmptyBorder(1, 2, 1, 2));
    }
    setText((obj == null) ? "" : obj.toString());
    
    
    
    this.addKeyListener(new java.awt.event.KeyAdapter() {
         public void keyTyped(java.awt.event.KeyEvent evt) {
                textareaKeyTyped(evt);
            }
        });
    
  return this;
        
  }
    
        
  


private void textareaKeyTyped(java.awt.event.KeyEvent evt) {
    char taste = evt.getKeyChar();
    
    if (taste=='q')
    	{
    	insert("Jawohl\n",getCaretPosition());
    	repaint();
	}
    if (taste=='w')
    	{
    		
    	
	}

     }   
    
}
 
M

mr1st

Gast
probier mal evt.consume();
Dadurch wird nur dein Listener verwendet, der fix integrierte Listener von deiner Superklasse (JTextarea) wird dann nicht mehr ausgeführt.
 

Illuvatar

Top Contributor
Mit evt.consume werden die danach kommenden Listener nicht mehr ausgeführt. Laut Sun gibt es aber keine Garantie, dass diese in irgendeiner bestimmten Reihenfolge ausgeführt werden.
 
M

mr1st

Gast
Bei mir wurden bisher meine eigenen Listener immer vorher ausgeführt. Muss aber nicht heißen, dass es immer so ist, vielleicht hatte ich nur Glück :)
 

jawohl

Mitglied
versteh ich nicht ganz, was es mit dem consume() auf sich hat und wie der verwendet werden soll.

Jedenfalls glaub ich jetzt einmal das Problem herausgefunden zu haben. Und zwar wenn ich ein Normales TextPane oder eine normale TextArea erstelle kann ich mit enter und der einen Löschen taste immer eine Zeile hinzufügen und weglöschen - standardmäßig. Jedoch ist das bei der Textarea (Oder auch Textpane - hab ich auhc schon probiert) in meiner JTable nicht mehr der fall. Stattdessen springt es einfach aus der TextareaZelle hinaus bei Enter-drücken.

Hat jemand eine Ahnung wie ich das umgehen kann?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Swing String[] in JTextArea ausgeben. Jeder Eintrag in neue Zeile, aber ohne "\n"- Geht das? AWT, Swing, JavaFX & SWT 3
M Swing JScrollPane (Parent JTextArea) aktualisieren + neue Zeile AWT, Swing, JavaFX & SWT 5
T Swing Mehrere Ausgaben in JTextArea AWT, Swing, JavaFX & SWT 2
B JPanel-Inhalte inkl. JTextarea zoomen? AWT, Swing, JavaFX & SWT 3
P JTextarea (in JScrollPane) zeigt nur die beiden letzten Einträge an? AWT, Swing, JavaFX & SWT 0
RedEagle Swing JTextArea ist leer AWT, Swing, JavaFX & SWT 13
E Warum wird Text im JTextArea erst am Programmende angezeigt ? AWT, Swing, JavaFX & SWT 1
E wie in JScrollPane auf JTextArea zugreifen AWT, Swing, JavaFX & SWT 12
K Swing 2 JTextArea parrallel scrollable AWT, Swing, JavaFX & SWT 16
Hatsi09 JTextArea Inhalt verlinken AWT, Swing, JavaFX & SWT 4
ralfb1105 jTextArea Scrollbar hinzufügen - mit Jigloo erstellt AWT, Swing, JavaFX & SWT 7
S Ausgabe in JTextArea AWT, Swing, JavaFX & SWT 13
H JTextArea - farbige Zeilen .. bitte um Vorschläge zur Implementierung AWT, Swing, JavaFX & SWT 1
F 2D-Grafik JTextArea drucken bringt mieses Ergebnis AWT, Swing, JavaFX & SWT 2
Mario1409 Swing JTextArea scroll Problem AWT, Swing, JavaFX & SWT 0
Bluedaishi JTextArea gefundene Zeile nach Oben Scrollen AWT, Swing, JavaFX & SWT 13
S JTextArea Text nach oben wandern lassen AWT, Swing, JavaFX & SWT 7
Bluedaishi JtextArea AWT, Swing, JavaFX & SWT 6
V JScrollBar soll weiterscrollen, wenn Inhalt von JTextArea erweitert wird AWT, Swing, JavaFX & SWT 7
G JTextArea mit JScrollPane wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
Bluedaishi JDialog modal und JTextArea AWT, Swing, JavaFX & SWT 4
F JTextarea Steuern ~ consolenanbindung AWT, Swing, JavaFX & SWT 5
F Event Handling JTextArea auf bestimmte Eingabe reagieren (Return-Taste) AWT, Swing, JavaFX & SWT 2
F JTextArea hat keinen Rahmen AWT, Swing, JavaFX & SWT 10
N JTextArea Events weiterleiten AWT, Swing, JavaFX & SWT 3
R JTextArea mit verschiedenen Textfarben AWT, Swing, JavaFX & SWT 6
M JTextArea wird nicht aktualisiert (ActionListener-Problem) AWT, Swing, JavaFX & SWT 1
HoloYoitsu jTextArea.setCaretPosition(); What am I doing wrong? AWT, Swing, JavaFX & SWT 0
S Zeilenumbruch jTextArea mit toString AWT, Swing, JavaFX & SWT 2
M JTextArea - Leertaste "sperren" AWT, Swing, JavaFX & SWT 1
S Inhalt der Java-Konsole in die JTextArea AWT, Swing, JavaFX & SWT 3
M Swing JTextArea mit ScrollBar AWT, Swing, JavaFX & SWT 9
S Swing Zahl der Zeilenumbrüche in einer JTextArea bestimmen AWT, Swing, JavaFX & SWT 1
F Swing Caret in JTextArea vergrößern AWT, Swing, JavaFX & SWT 2
D JTextArea auf KeyListener Command AWT, Swing, JavaFX & SWT 6
N JFrame änliches wie JTextArea? AWT, Swing, JavaFX & SWT 2
A Swing JTextArea - Multi-Line-Editing AWT, Swing, JavaFX & SWT 2
A Swing JTextArea aus anderer Klasse in realtime aktualisieren AWT, Swing, JavaFX & SWT 3
O JTextArea befüllen AWT, Swing, JavaFX & SWT 2
G JTextArea on the fly aus anderem Programm befüllen AWT, Swing, JavaFX & SWT 4
A Swing Einrücken mehrerer Zeilen per Tab in einem JTextPane/JTextArea AWT, Swing, JavaFX & SWT 3
T Swing Ausgabe aus ArrayList in Klasse1 in jTextArea in Klasse2 AWT, Swing, JavaFX & SWT 2
B JTextArea Größe an Container anpassen AWT, Swing, JavaFX & SWT 2
B Drucken der JTextArea AWT, Swing, JavaFX & SWT 4
M JTextArea Zeile hinzufügen AWT, Swing, JavaFX & SWT 4
C JTextArea scrollt bei append(String) aus Threads nicht ans Ende AWT, Swing, JavaFX & SWT 7
P JPanel- Listener durch JTextArea aktivieren AWT, Swing, JavaFX & SWT 8
A JTextArea - Zeichenbegrenzung nach .txt Datei import AWT, Swing, JavaFX & SWT 6
Hoppelmann Swing Tasten in JTextArea blockieren AWT, Swing, JavaFX & SWT 2
S JTextArea Tastaturanschläge AWT, Swing, JavaFX & SWT 2
E Swing JTextArea in JFrame, wie nun WindowFocusListener implementieren? AWT, Swing, JavaFX & SWT 2
S Problem mit JButton und JTextArea AWT, Swing, JavaFX & SWT 2
J Swing Mitwachsende JTextArea+ JPanel AWT, Swing, JavaFX & SWT 4
P Swing JtextArea füllen mit setText AWT, Swing, JavaFX & SWT 7
M Probleme mit der Selektion einer JTextArea AWT, Swing, JavaFX & SWT 3
T Die Größe einer JTextArea an Ihren Parent JPanel anpassen. AWT, Swing, JavaFX & SWT 5
hdi Swing ListCellRenderer + JTextArea + LineWrap AWT, Swing, JavaFX & SWT 6
T ComponentOrientation in JTextArea AWT, Swing, JavaFX & SWT 3
H Hintergrundbild in jTextArea AWT, Swing, JavaFX & SWT 4
G Swing JTextArea mit fester Anzahl Spalten! AWT, Swing, JavaFX & SWT 10
G ein JTextArea in zwei JPanels AWT, Swing, JavaFX & SWT 2
L JTextArea mit JScrollPane AWT, Swing, JavaFX & SWT 7
padde479 Swing replace JTextArea funktioniert nicht AWT, Swing, JavaFX & SWT 2
L Zeilenumbrüche aus JTextArea MIT in Textdatei schreiben AWT, Swing, JavaFX & SWT 4
_dp jTextArea/jTextPanel Auto Höhe AWT, Swing, JavaFX & SWT 5
Ollek JTextArea - Feste Zeilenanzahl(8 Zeilen) AWT, Swing, JavaFX & SWT 3
S Swing JTextArea während der Laufzeit füllen AWT, Swing, JavaFX & SWT 5
Ollek Text in JTextField und JTextArea zur Laufzeit ändern AWT, Swing, JavaFX & SWT 6
P Datenelement anderer Klasse in JTextArea ausgeben AWT, Swing, JavaFX & SWT 4
P Scrollbar JTextArea AWT, Swing, JavaFX & SWT 23
M Swing Ausgabe in JTextArea verzögern AWT, Swing, JavaFX & SWT 7
T Swing jTextArea soll sich der Fenstergröße anpassen beim ziehen?? AWT, Swing, JavaFX & SWT 2
S System.out in JTextArea AWT, Swing, JavaFX & SWT 4
S Swing JTextArea - Bild auf/ab Tasten implementieren AWT, Swing, JavaFX & SWT 4
J JTextArea verschwindet bei resize vom JFrame AWT, Swing, JavaFX & SWT 2
VfL_Freak "setAccelerator/KeyStroke" bei JTextArea ? AWT, Swing, JavaFX & SWT 6
P Swing JTextArea - beim neuzeichnen bleibt manchmal weißer Kasten AWT, Swing, JavaFX & SWT 10
Dit_ JTextArea zu Zeile X scrollen AWT, Swing, JavaFX & SWT 4
H variable Höhe einer JTextArea (als Renderer/Editor) als Zelle einer JTable AWT, Swing, JavaFX & SWT 9
B Wechsel JTextArea und JComponent AWT, Swing, JavaFX & SWT 9
M [erledigt] Bestimmte Zeile aus JTextArea löschen AWT, Swing, JavaFX & SWT 3
G Swing JTable und JTextArea synchronisieren AWT, Swing, JavaFX & SWT 2
C JLabel, JTextArea, JScrollPane. repaint(); ? AWT, Swing, JavaFX & SWT 6
M JTextArea AWT, Swing, JavaFX & SWT 2
E Swing JTextArea Alternative? AWT, Swing, JavaFX & SWT 5
A Swing JTextArea über Frame hinaus anzeigen? AWT, Swing, JavaFX & SWT 2
S JInternalFrame oder JTextArea neu laden AWT, Swing, JavaFX & SWT 2
N JTextArea.setLineWrap Bug? AWT, Swing, JavaFX & SWT 3
N Swing JTextArea/JScrollpane: JScrollbar position AWT, Swing, JavaFX & SWT 8
I JTextArea mit Copy Paste Funktion AWT, Swing, JavaFX & SWT 7
M Swing JTextArea größe anpassen & setBackground liefer Nullpointer AWT, Swing, JavaFX & SWT 4
Plastagen JTextArea CaretPosition Aktualisierung AWT, Swing, JavaFX & SWT 10
C JTextField und JTextArea - Verständnisproblem AWT, Swing, JavaFX & SWT 14
B Exceptions werfen und in JTextArea ausgeben AWT, Swing, JavaFX & SWT 4
F new Line in JTextarea AWT, Swing, JavaFX & SWT 15
X Problem bei JTextArea und Thread.sleep() AWT, Swing, JavaFX & SWT 8
J Beliebtes Problem: Scrollbar in JTextArea AWT, Swing, JavaFX & SWT 4
w0ddes Swing JTextArea auf JScrollPane - Autoscroll?! AWT, Swing, JavaFX & SWT 2
Developer_X Swing Java JTextArea auto scroll down AWT, Swing, JavaFX & SWT 6
T Swing JTextArea, JTextPane, JEditorPane...Unterschied?! AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben