Swing Zeilenumbruch in JTable Zellen

Sinus

Aktives Mitglied
Hallo zusammen,

wie kann ich einen Zeilenumbruch bzw. eine automatische Anpassung der Zeilenhöhe in einer JTable
programmieren? Als Lösungsansatz habe ich beim googlen die Vererbung eines TextAreas gefunden.

Der Code hierzu sieht so aus:

Java:
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;


public class RowHeightCellRenderer extends JTextArea implements TableCellRenderer
{
  /**
	 * 
	 */
	private static final long serialVersionUID = 1L;

public Component getTableCellRendererComponent (JTable table, 
												Object value, 
												boolean isSelected, 
												boolean hasFocus, 
												int row, 
												int column )  {
    setText( value.toString() );    // Value kann String mit \n enthalten
    return this;
  }
}

Mein HauptCode sieht so aus:
Java:
import javax.swing.*;

public class BeispielTabelle {

	public JPanel erstelleTabelle() {        		
		JPanel totalGUI = new JPanel();
					
		//Titel der Tabelle
        String[] title = {"EINS", "ZWEI", "DREI"};

        //Tabellendaten
        Object[][] playerdata = {       
        {new Integer(34), "Stefan", "hei du ei"},
        {new Integer(85), "Dirk", "huhu du ku"},
        {new Integer(32), "Patrick", "dumdi dumdi dummdi dumm di di didumm"},
        {new Integer(10), "Anna", "blabla bla bla blabla bla bla blabla"},};
        
        //Tabelle erstellen
        JTable textTable = new JTable(playerdata,title);
     				
        //Spaltenbreiten festlegen
		textTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); // Autoresizing abschalten, sonst sind alle Spalten gleich breit:
        textTable.getColumnModel().getColumn(0).setPreferredWidth(60);
        textTable.getColumnModel().getColumn(1).setPreferredWidth(60);
        textTable.getColumnModel().getColumn(2).setPreferredWidth(90);

        //das Ganze scrollbar machen
        JScrollPane scrollPane = new JScrollPane(textTable);
        
        totalGUI.add(scrollPane);				
		return totalGUI;
	}
	
	private static void createAndShowGUI() {

		//create main frame
		JFrame mainFrame = new JFrame("");
		BeispielTabelle test = new BeispielTabelle();
				
		JPanel totalGUI = new JPanel();
		totalGUI = test.erstelleTabelle();
		totalGUI.setLayout(new BoxLayout(totalGUI, BoxLayout.Y_AXIS));
											      
		//visible mode
		mainFrame.add(totalGUI); //integrate main panel to main frame
		mainFrame.pack();
		mainFrame.setVisible(true);		
	}
	
	
	public static void main (String[] args)	{				
        
		createAndShowGUI();		
		
	}//main
}//GUI_main

Als Anfänger weiß ich leider nicht, wie ich jetzt den RowHeightCellRnderer in meinen HauptCode einbinde
bzw. aufrufe.

Könntet ihr mir da unter die Ärmel greifen?

Vielen Dank und viele Grüße
Sinus
 
Zuletzt bearbeitet:

Bartertown

Mitglied
Ob durch die Darstellung einer TextArea die Zeilen größer werden, weiß ich nicht.
Aber der Renderer wird typenbezogen zugeordnet :

textTable.setDefaultRenderer(String.class, new RowHeightCellRenderer());


//...


public class RowHeightCellRenderer extends JTextArea implements TableCellRenderer
{
@Override
public Component getTableCellRendererComponent (JTable table,
Object value,
boolean isSelected,
boolean hasFocus,
int row,
int column ) {
setText((String)value);
return this;
}

}
 

Sinus

Aktives Mitglied
ok ich habs selber hinbekommen.

durch hinzufügen folgender Zeilen funktioniert nun mein Vorhaben ("Zeilenumbruch")

Java:
 RowHeightCellRenderer dynRow = new RowHeightCellRenderer();
        textTable.getColumnModel().getColumn(2).setCellRenderer(dynRow);
        textTable.setRowHeight(50);
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
GianaSisters Swing JTable Zellen intelligenter Zeilenumbruch AWT, Swing, JavaFX & SWT 4
T JTable, Zeilenumbruch in Zellen AWT, Swing, JavaFX & SWT 23
M Swing Cell Renderer für Zeilenumbruch in JTable AWT, Swing, JavaFX & SWT 0
D Zeilenumbruch in einer JTable AWT, Swing, JavaFX & SWT 9
W Swing JTable Zeilenumbruch innerhalb einer Zelle AWT, Swing, JavaFX & SWT 3
N Swing JTable - Problem mit Zeilenumbruch AWT, Swing, JavaFX & SWT 6
eskimo328 JTable Zeilenumbruch im Header AWT, Swing, JavaFX & SWT 2
D Zeilenumbruch in einer JTable AWT, Swing, JavaFX & SWT 3
R Zeilenumbruch in JTable AWT, Swing, JavaFX & SWT 2
G JTable Zeilenumbruch innerhalb einer Zelle bzw. columnHeader AWT, Swing, JavaFX & SWT 1
M Dynamische Zellengröße und Zeilenumbruch AWT, Swing, JavaFX & SWT 7
T JTextPane ignoriert HTML Zeilenumbruch <br> tag wegen eigenem HTMLEditorKit AWT, Swing, JavaFX & SWT 5
E JavaFX TableView mit Zeilenumbruch in Zellen AWT, Swing, JavaFX & SWT 5
X JTextPane automatischer Zeilenumbruch IM Wort AWT, Swing, JavaFX & SWT 2
S Swing Warum funktioniert der automatische Zeilenumbruch mit arabischen Zeichen beim JTextPane nicht AWT, Swing, JavaFX & SWT 3
S Swing Automatischer Zeilenumbruch bei JTextPanes AWT, Swing, JavaFX & SWT 2
A Zeilenumbruch per button AWT, Swing, JavaFX & SWT 5
S Zeilenumbruch jTextArea mit toString AWT, Swing, JavaFX & SWT 2
R JavaFX Automatischer Zeilenumbruch in Text AWT, Swing, JavaFX & SWT 13
B SWT Text - zeilenumbruch AWT, Swing, JavaFX & SWT 2
N Swing JTree TreeCellRenderer mit html und automatischen Zeilenumbruch AWT, Swing, JavaFX & SWT 8
T Nimbus JButton: Zeilenumbruch korrigieren? AWT, Swing, JavaFX & SWT 9
B Swing JEditorPane ohne Zeilenumbruch nach InputStream AWT, Swing, JavaFX & SWT 2
B Swing Zeilenumbruch in Graphics AWT, Swing, JavaFX & SWT 20
O JOptionPane.showMessageDialog mit automatischem Zeilenumbruch AWT, Swing, JavaFX & SWT 9
F Jgrid Zeilenumbruch AWT, Swing, JavaFX & SWT 10
C Zeilenumbruch von JTextPane wird nicht erkannt AWT, Swing, JavaFX & SWT 2
Zettelkasten drawString() Zeilenumbruch AWT, Swing, JavaFX & SWT 2
P LayoutManager Zeilenumbruch im Panel AWT, Swing, JavaFX & SWT 6
Spot84 swt label zeilenumbruch will nicht funktionieren AWT, Swing, JavaFX & SWT 1
H SWT Zeilenumbruch in List AWT, Swing, JavaFX & SWT 9
K Swing jTextPane zeilenumbruch AWT, Swing, JavaFX & SWT 2
S Swing jTextPaine kein Zeilenumbruch nach setText() AWT, Swing, JavaFX & SWT 9
S Zeilenumbruch in MsgBox AWT, Swing, JavaFX & SWT 13
A JLabel und Zeilenumbruch - Nicht das Übliche AWT, Swing, JavaFX & SWT 4
G Buttonbeschreibung mit Zeilenumbruch AWT, Swing, JavaFX & SWT 3
D Toolbars und Zeilenumbruch (benutze FlowLayout) AWT, Swing, JavaFX & SWT 2
M Zeilenumbruch bei MessageFormat gesucht AWT, Swing, JavaFX & SWT 10
G Tooltip Zeilenumbruch AWT, Swing, JavaFX & SWT 13
7 Zeilenumbruch in Textfeld AWT, Swing, JavaFX & SWT 3
M JLabel Zeilenumbruch AWT, Swing, JavaFX & SWT 10
M setLineWrap() + echten Zeilenumbruch AWT, Swing, JavaFX & SWT 4
I Automatischer Zeilenumbruch in JTextArea? AWT, Swing, JavaFX & SWT 5
G JEditorPane Zeilenumbruch verhindern AWT, Swing, JavaFX & SWT 2
G JLabel mit Zeilenumbruch AWT, Swing, JavaFX & SWT 6
G Fehleranzeige im Textfeld bei Zeilenumbruch AWT, Swing, JavaFX & SWT 4
S JLabel zeilenumbruch ? geht das in JDialog? AWT, Swing, JavaFX & SWT 2
O Zeilenumbruch erzwingen (FlowLayout? AWT, Swing, JavaFX & SWT 1
A Automatischen Zeilenumbruch AWT, Swing, JavaFX & SWT 5
R JTree: Zeilenumbruch in Node AWT, Swing, JavaFX & SWT 6
G Zeilenumbruch nach n Zeichen in JTextArea AWT, Swing, JavaFX & SWT 24
P TextArea zeilenumbruch AWT, Swing, JavaFX & SWT 7
T Zeilenumbruch auf JButton AWT, Swing, JavaFX & SWT 6
M JTextPane - Zeilenumbruch verhindern stoppen deaktivieren :) AWT, Swing, JavaFX & SWT 5
C Zeilenumbruch in einem JTextPane nach einem vorgegebenen cm AWT, Swing, JavaFX & SWT 2
M Jeditorpane + zeilenumbruch AWT, Swing, JavaFX & SWT 2
M Zeilenumbruch beim JLabel AWT, Swing, JavaFX & SWT 3
N JTextArea Zeilenumbruch erzwingen AWT, Swing, JavaFX & SWT 2
D [SWT] Zeilenumbruch für Tabelle AWT, Swing, JavaFX & SWT 4
bernd Zeilenumbruch in JEditorPane AWT, Swing, JavaFX & SWT 10
E Zeilenumbruch in einem AWT TextField AWT, Swing, JavaFX & SWT 2
R JTextPane: Zeilenumbruch AWT, Swing, JavaFX & SWT 3
G Zeilenumbruch in einer SWT TableItem AWT, Swing, JavaFX & SWT 1
bummerland ein zeichen nach einem zeilenumbruch einfügen AWT, Swing, JavaFX & SWT 4
J Drag und drop aus einer JTable - bitte um Unterstützung AWT, Swing, JavaFX & SWT 2
S HPRO und UPRO gemeinsame JTABLE gemeinsamer RENDERER ? AWT, Swing, JavaFX & SWT 1
F Swing JTable - MultiHeader inkl. Eingabemöglichkeit AWT, Swing, JavaFX & SWT 1
S JTable - Feldinhalte anzeigen AWT, Swing, JavaFX & SWT 15
D Swing JTable Spaltenbreite AWT, Swing, JavaFX & SWT 1
W Gibt es einen "automatischen Listener" in Swing oder JTable oder der ATM-Klasse? AWT, Swing, JavaFX & SWT 14
G jTable - getSelectedRow() AWT, Swing, JavaFX & SWT 3
I JTable mit einem Button zu einer Detail Seite springen AWT, Swing, JavaFX & SWT 4
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
D Tastaturabfragen CTRL+t, CTRL+E bei eine JTable, bestehend aus JTextAteas AWT, Swing, JavaFX & SWT 4
P Checkboxes in JTable nicht editable AWT, Swing, JavaFX & SWT 9
F Best-Practise: JTable Text in Zelle zu groß AWT, Swing, JavaFX & SWT 2
izoards JTable in CSV File schreiben... AWT, Swing, JavaFX & SWT 23
Kohl Jedes Objekt einer JTable um ein Zeichen verkürzen AWT, Swing, JavaFX & SWT 7
I JTable, DefaultTableModel, zwei Zahlen multiplizieren. AWT, Swing, JavaFX & SWT 26
M JTABLE / wie oft wurde gewürfelt. AWT, Swing, JavaFX & SWT 1
F JTable vergrößern AWT, Swing, JavaFX & SWT 2
H JTable: Diverse NullPointer-Exceptions zur Laufzeit AWT, Swing, JavaFX & SWT 3
J Swing Werte des JTable werden nicht angezeigt AWT, Swing, JavaFX & SWT 9
T Swing JTable cellRenderer mit jpg Hintergrundfarbe lässt sich nicht ändern. AWT, Swing, JavaFX & SWT 1
HoT Einzelne Zelle in JTable Rahmen unten setzen AWT, Swing, JavaFX & SWT 24
B JTable Zellen zusammenfügen AWT, Swing, JavaFX & SWT 3
H JTable im JSplitPane darstellen AWT, Swing, JavaFX & SWT 2
MadMax2506 Swing JTable lädt sehr lange AWT, Swing, JavaFX & SWT 1
R Swing JTable und Spaltenausrichtung AWT, Swing, JavaFX & SWT 8
G JTable füllen AWT, Swing, JavaFX & SWT 1
H JTable TableCellEditor-Problem AWT, Swing, JavaFX & SWT 0
J Datensatz in jTable ausgeben AWT, Swing, JavaFX & SWT 3
M Swing Automatischer Editorstart in JTable-Zelle AWT, Swing, JavaFX & SWT 5
ralfb1105 Swing JTable aktualisieren AWT, Swing, JavaFX & SWT 5
adiko01 JTable: Nur markierte Zeilen aus der Tabelle in CSV exportiern AWT, Swing, JavaFX & SWT 9
M JTable.setDefaultRenderer(...) greift nicht AWT, Swing, JavaFX & SWT 0
J JTable: Eingabe in Tabellenzelle korrigieren AWT, Swing, JavaFX & SWT 4
T Problem mit JTable Sortierung AWT, Swing, JavaFX & SWT 2
D JTable nach INSERT aktualisieren /refreshen AWT, Swing, JavaFX & SWT 1
D MySQL Daten in JTable anzeigen AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben