JTable bei Insert in DB via jdbc aktualisieren

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,

ich stehe vor folgendem Problem: Ich habe eine JTable und ein dazughöriges TableModel. Die Tabelle wird mir wunderbar angezeigt. Die Daten hole ich via JDBC aus einer Datenbank.
Füge ich nun ebenfalls via JDBC einen Datensatz in die DB ein, möchte ich auch die JTable aktualisieren. Nur klappt das nicht bzw. ich weiß noch nicht, wie ich das anstellen soll. Den relevanten Code poste ich mal hier... Es wäre schön, wenn mir jemand helfen könnte.

Zudem würde ich gerne wissen, wo der Unterschied zwischen
implements TableModel
und
extends AbstractTableModel
liegt. Am besten mal mit eigenen Worten erklärt und nicht allzu abstrakt. Wo genau muss ich dabei das DefaultTableModel einordnen?

Kann ich auch mittels der setValueAt-Methode des Models Daten via JDBC in die DB schreiben? Wäre das evtl. sogar die ideale Lösung? Wie würde das funktionieren?

Vielen Dank schonmal, Carsten


Methoden in der Klasse Mitarbeitererfassung
Code:
private void setMitarbeiter() {
		
		try {
	    	con = DBConn.openDB();			
		    System.out.println("Connection Successful ");
	    } catch (Exception e) {	    	
	    	e.printStackTrace();
	    	System.out.println("Keine Verbindung zur Datenbank");
	    }
	    try {

	    	java.sql.Date gebdatesql = null;
	    	
	    	try {
	    		java.util.Date gebdate = new java.util.Date();
	    		DateFormat df;
	    		df = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.GERMANY);	    		
	    		gebdate = df.parse(geburtsdatum.getText());
		    	gebdatesql = new java.sql.Date(gebdate.getTime());	    			    		
	    		
	    	} catch (ParseException pe) {
	    		pe.printStackTrace();
	    	}

	    	PreparedStatement speicherMitarbeiter = con.prepareStatement( 
	    	  "INSERT into PERSONAL (Nachname,Vorname,Position,Geburtsdatum,Einstellungsdatum,Straße,PLZ,Ort,[Telefon privat]) values (?,?,?,?,?,?,?,?,?)");
	    	System.out.println(nachname.getText());
	    	speicherMitarbeiter.setString( 1, nachname.getText() ); 
	    	speicherMitarbeiter.setString( 2, vorname.getText() );
	    	speicherMitarbeiter.setString( 3, position.getText() );	    	
	    	speicherMitarbeiter.setDate( 4, gebdatesql );
	    	speicherMitarbeiter.setDate( 5, gebdatesql );
	    	speicherMitarbeiter.setString( 6, strasse.getText() );
	    	speicherMitarbeiter.setString( 7, plz.getText() );
	    	speicherMitarbeiter.setString( 8, ort.getText() );
	    	speicherMitarbeiter.setString( 9, telpriv.getText() );
	    	speicherMitarbeiter.executeUpdate();
	    	System.out.println(speicherMitarbeiter.toString());
	    	
	    	speicherMitarbeiter.close();
	    	con.close();
	    	System.out.println("Datenbankverbindung getrennt");
	    	speicherMitarbeiter.close();
	    	con.close();
	    	
	    	
	    		    		    	
	    	
	    }catch (Exception e) {
	    	e.printStackTrace();
	    }
	
	}


Code:
private JScrollPane tabelleAnzeigen()  {

		//Vector<String> columnNames = new Vector<String>(); // so wars vorher, nacher Object!!!
		Vector<Object> columnNames = new Vector<Object>();
	    Vector<Vector<Object>> data = new Vector<Vector<Object>>();
		
	    try {
	    	con = DBConn.openDB();			
		    System.out.println("Connection Successful ");
	    } catch (Exception e) {	    	
	    	e.printStackTrace();
	    	System.out.println("Keine Verbindung zur Datenbank");
	    }
		
	    try {
	    	String query = "SELECT * from Personal";
	    	Statement stmt = con.createStatement();
	    	ResultSet rst = stmt.executeQuery(query);
	    	ResultSetMetaData md = rst.getMetaData();
	    	int columns = md.getColumnCount();	    	
            for (int i = 1; i <= columns; i++) {
                String colname=md.getColumnName(i);
                columnNames.addElement( colname );
            }
            while (rst.next()) {
                Vector<Object> row = new Vector<Object>(columns);
                for (int i = 1; i <= columns; i++) {
                    row.addElement( rst.getObject(i) );
                }
                data.addElement( row );
            }
            rst.close();
            stmt.close();
            
	    }catch (Exception e2) {
	    	e2.printStackTrace();
	    }
	    table = new JTable();
	    model = new maModel (data, columnNames);
	    table.setModel(model);
	    scrollTabelle = new javax.swing.JScrollPane();
	    scrollTabelle.setViewportView(table);
	     
	    return scrollTabelle;

	}

Das dazughörige Model


Code:
package components;

import java.util.Vector;

import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.TableModel;

public class maModel implements TableModel {

	private static final long serialVersionUID = 8823887607183509554L;
	private Vector<TableModelListener> listeners = new Vector<TableModelListener>(); 
	private Vector<Vector<Object>> dataEntries = new Vector<Vector<Object>>(); 
	private Vector<Object> columnidentifier = new Vector<Object>(); 
	
	public maModel (Vector<Vector<Object>> dataEntries, Vector<Object> columnidentifier) {
        this.dataEntries = dataEntries;
        this.columnidentifier = columnidentifier;
    }
	
	public void addTableModelListener(TableModelListener l) {
        listeners.add(l);
    }
    public void removeTableModelListener(TableModelListener l) {
        listeners.remove(l);
    }
    public Class<?> getColumnClass(int columnIndex) {
        return String.class;
    }
    public int getColumnCount() {
        return columnidentifier.size();
    }
    public String getColumnName(int columnIndex) {
        return columnidentifier.get(columnIndex).toString();
    }
    public int getRowCount() {
        return dataEntries.size();
    } 
    
    public Object getValueAt(int rowIndex, int columnIndex) {
        Vector<Object> temp = dataEntries.get(rowIndex);
        return temp.get(columnIndex);
    }
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        return false;
    }
    public void setValueAt(Object value, int rowIndex, int columnIndex) {
        Vector<Object> temp = dataEntries.get(rowIndex);
        temp.set(columnIndex, value);
    }
    public void addRow(Vector<Object> row) {
        dataEntries.add(row);
    }
    public void setColumnidentifier(Vector<Object> columnidentifier) {
        this.columnidentifier = columnidentifier;
    } 
    
    public void addTimeColumn(Vector<Object> column) {
        for (int i = 0; i < column.size(); ++i) {
            Vector<Object> temp = new Vector<Object>();
            temp.add(column.get(i));
            addRow(temp);
        }
    } 
    
    public void addColumn(String identifier, Vector<Object> column) {
        columnidentifier.add(identifier);
        int index = dataEntries.get(0).size();
        for (int i = 0; i < dataEntries.size(); ++i) {
            dataEntries.get(i).add(index, column.get(i));
        }
        fireTableStructureChanged();
    }
    
    public void fireTableStructureChanged() {
        fireTableChanged(new TableModelEvent(this, TableModelEvent.HEADER_ROW));
    } 
    
    public void fireTableChanged(TableModelEvent e){
        for (int i = 0, n = listeners.size(); i < n; i++) {
            ((TableModelListener) listeners.get(i)).tableChanged(e);
        }
    }
   	
}
 
G

Guest

Gast
Hi,

wow, dass passt so ungefähr auf mein aktuelles Problem. Zwar nur so unegfähr, aber die Lösung hierzu würde mir denke ich schon weiterhelfen.

Also freue ich mich zusammen mit dem anonymen User (Gast) auf viele viele Antworten!

Grüße, Bernd
 
S

SlaterB

Gast
@Bernd:
nicht einfach so antworten, dein Beitrag bringt fast nix und als erste Antwort streichst du den Thread von der wichtigen Liste 'Unbeantwortete Themen'


------

zu den ersten Fragen:
http://www.java-forum.org/de/viewtopic.php?p=476822

> Kann ich auch mittels der setValueAt-Methode des Models Daten via JDBC in die DB schreiben?

genau dann, wenn das TableModel sowas anbietet,
ein Standard-Model in der API gibts dafür nicht,
wenn dann nur in externen zusätzlichen Libraries,

kurze google-Suche führte zu
http://forums.sun.com/thread.jspa?threadID=5141966
(edit: nachdem ich reingeschaut habe: diese Art des Durcheinanders von JDBC und Swing kann ich aber nicht gutheißen)

> Füge ich nun ebenfalls via JDBC einen Datensatz in die DB ein, möchte ich auch die JTable aktualisieren. Nur klappt das nicht bzw. ich weiß noch nicht, wie ich das anstellen soll.

genau zum Zeitpunkt des Inserts auch das Model aktualisieren,

wenn du noch nicht ein TableModel um einen Eintrag erweitern kannst, dann ist das ein Thema für sich,
hat dann mit dem DB-Insert eher wenig zu tun ;)
(falls es dennoch genau die Frage ist, bitte bestätigen + vielleicht etwas näher ausführen)
 

bernds

Mitglied
@Slater: Vielen Dank. Das mit den verschiedenen Models habe ich jetzt denke ich grundsätzlich verstanden.

Zur anderen Sache: Habe mein Model nun mal ein wenig angepasst und erweitert (Die JTable ist nun auch editierbar). Jedoch funktioniert das immer noch nicht so ganz. Wenn ich die Tabelle im Programm editiere erhalte ich einen Fehler (siehe unten angefügt). Kann mir evtl. jemand sagen, wo genau nun das Problem ist und wie ich das Model irgendwie so sauber hinbekomme, dass es funktioniert?
Das mit dem Update des Models nach dem Insert bekomme ich dann mit Sicherheit auch allein hin, wenn das nun funktionieren würde.

Vielen Dank

Model
Code:
package components;

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Vector;

import javax.swing.JOptionPane;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.AbstractTableModel;

// implements TableModel sollte auch gehen.
public class maModel extends AbstractTableModel implements TableModelListener{

	private static final long serialVersionUID = 8823887607183509554L;
	private Vector<TableModelListener> listeners = new Vector<TableModelListener>(); 
	private Vector<Vector<Object>> dataEntries = new Vector<Vector<Object>>(); 
	private Vector<Object> columnidentifier = new Vector<Object>(); 
	
	private static Connection con;
	
	public maModel (Vector<Vector<Object>> dataEntries, Vector<Object> columnidentifier) {
        this.dataEntries = dataEntries;
        this.columnidentifier = columnidentifier;
    }
	
	public void addTableModelListener(TableModelListener l) {
        listeners.add(l);
    }
    public void removeTableModelListener(TableModelListener l) {
        listeners.remove(l);
    }
    public Class<?> getColumnClass(int columnIndex) {
        return String.class;
    }
    public int getColumnCount() {
        return columnidentifier.size();
    }
    public String getColumnName(int columnIndex) {
        return columnidentifier.get(columnIndex).toString();
    }
    public int getRowCount() {
        return dataEntries.size();
    } 
    
    public Object getValueAt(int rowIndex, int columnIndex) {
        Vector<Object> temp = dataEntries.get(rowIndex);
        return temp.get(columnIndex);
    }
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        return true;
    }
    public void setValueAt(Object value, int rowIndex, int columnIndex) {
        Vector<Object> temp = dataEntries.get(rowIndex);
        temp.set(columnIndex, value);
        tableChanged(new TableModelEvent(this, TableModelEvent.UPDATE));
    }
    public void addRow(Vector<Object> row) {
        dataEntries.add(row);
    }
    public void setColumnidentifier(Vector<Object> columnidentifier) {
        this.columnidentifier = columnidentifier;
    } 
    
    public void addTimeColumn(Vector<Object> column) {
        for (int i = 0; i < column.size(); ++i) {
            Vector<Object> temp = new Vector<Object>();
            temp.add(column.get(i));
            addRow(temp);
        }
    } 
    
    public void addColumn(String identifier, Vector<Object> column) {
        columnidentifier.add(identifier);
        int index = dataEntries.get(0).size();
        for (int i = 0; i < dataEntries.size(); ++i) {
            dataEntries.get(i).add(index, column.get(i));
        }
        fireTableStructureChanged();
    }
    
    public void fireTableStructureChanged() {
        fireTableChanged(new TableModelEvent(this, TableModelEvent.HEADER_ROW));
    } 
    
    public void fireTableChanged(TableModelEvent e){
        for (int i = 0, n = listeners.size(); i < n; i++) {
            ((TableModelListener) listeners.get(i)).tableChanged(e);
        }
    }
    
    public void tableChanged(TableModelEvent evt) {
        if (evt.getType() == TableModelEvent.UPDATE) {
            int column = evt.getColumn();
            int row = evt.getFirstRow();
            String newValue = this.getValueAt(row,column).toString();
                       
            try {
				con = DBConn.openDB();
			} catch (SQLException e) {
				e.printStackTrace();
			} catch (ClassNotFoundException e) {
				e.printStackTrace();
			}            
			
            try {
                if(con!=null){
                    Statement stmt = con.createStatement();
                    String UpdateStmt = "UPDATE Personal SET"+getColumnName(column)+"='"+newValue+"' WHERE personal-nr='"+this.getValueAt(row, column)+"'";
                    System.out.println(UpdateStmt);
                    JOptionPane.showMessageDialog( null, UpdateStmt );                  
                    stmt.close();
                    con.close();
                }
            } catch (SQLException sqe) {
                String message = sqe.getMessage();
                if(message.contains(":")){
                    message = message.substring( message.indexOf(":") + 1 );
                }
                JOptionPane.showMessageDialog( null, message );
            }
        }
    }
   	
}

Die Exception

Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: -1
at java.util.Vector.get(Unknown Source)
at components.maModel.getValueAt(maModel.java:49)
at components.maModel.tableChanged(maModel.java:97)
at components.maModel.setValueAt(maModel.java:57)
at javax.swing.JTable.setValueAt(Unknown Source)
at javax.swing.JTable.editingStopped(Unknown Source)
at javax.swing.AbstractCellEditor.fireEditingStopped(Unknown Source)
at javax.swing.DefaultCellEditor$EditorDelegate.stopCellEditing(Unknown Source)
at javax.swing.DefaultCellEditor.stopCellEditing(Unknown Source)
at javax.swing.JTable$GenericEditor.stopCellEditing(Unknown Source)
at javax.swing.DefaultCellEditor$EditorDelegate.actionPerformed(Unknown Source)
at javax.swing.JTextField.fireActionPerformed(Unknown Source)
at javax.swing.JTextField.postActionEvent(Unknown Source)
at javax.swing.JTextField$NotifyAction.actionPerformed(Unknown Source)
at javax.swing.SwingUtilities.notifyAction(Unknown Source)
at javax.swing.JComponent.processKeyBinding(Unknown Source)
at javax.swing.JComponent.processKeyBindings(Unknown Source)
at javax.swing.JComponent.processKeyEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
[/code]
 
S

SlaterB

Gast
der Fehler ist offensichtlich, dass
> evt.getFirstRow()
-1 ergibt

weil
> new TableModelEvent(this, TableModelEvent.UPDATE)
es vielleicht nicht besser erzeugt,
warum genau kann ich da im Moment nicht weiter nachforschen,

kannst ja morgen am Tag nochmal posten, wenn dann noch aktuell,
vielleicht kann ich dann genauer nachschauen
 

bernds

Mitglied
Hallo,

ja das ist morgen noch aktuell, da ich auch erst morgen gegen Abend dazu kommen werde, mich der Sache wieder zu widmen. Von daher wäre es super, wenn mir jemand konkret meinen Fehler evtl. sogar mit ner Lösung aufzeigen könnte. Das würde mir das Weihnachtsfest versüßen...

Bis dahin und Danke!
 
S

SlaterB

Gast
tja, also der Konstruktor, den du verwendest, ist:

Code:
    /**
     *  This row of data has been updated. 
     *  To denote the arrival of a completely new table with a different structure 
     *  use <code>HEADER_ROW</code> as the value for the <code>row</code>. 
     *  When the <code>JTable</code> receives this event and its
     *  <code>autoCreateColumnsFromModel</code> 
     *  flag is set it discards any TableColumns that it had and reallocates 
     *  default ones in the order they appear in the model. This is the 
     *  same as calling <code>setModel(TableModel)</code> on the <code>JTable</code>. 
     */
    public TableModelEvent(TableModel source, int row) {
	this(source, row, row, ALL_COLUMNS, UPDATE);
    }

> tableChanged(new TableModelEvent(this, TableModelEvent.UPDATE));


TableModelEvent.UPDATE ist schon mal falsch gewählt, das kommt als row an (int-Wert 0),
column ist gar nicht angegeben, deshalb wird dafür ALL_COLUMNS eingesetzt, welches -1 ist

kein Wunder, dass getValueAt() dabei durchdreht
 

bernds

Mitglied
Vielen Dank,

aber irgendiwe bin ich ein wenig verwirrt. Wie mach ich es denn richtig?

Grüße und danke
 
S

SlaterB

Gast
was ist 'es'?
denkbar wäre z.B., einen Konstruktor mit richtigen row + column -Parametern zu verwenden
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
D JTable nach INSERT aktualisieren /refreshen AWT, Swing, JavaFX & SWT 1
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
M Swing Cell Renderer für Zeilenumbruch in JTable AWT, Swing, JavaFX & SWT 0
H JTable im JSplitPane darstellen AWT, Swing, JavaFX & SWT 2
MadMax2506 Swing JTable lädt sehr lange AWT, Swing, JavaFX & SWT 1
D Zeilenumbruch in einer JTable AWT, Swing, JavaFX & SWT 9
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
W Swing JTable Zeilenumbruch innerhalb einer Zelle AWT, Swing, JavaFX & SWT 3
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 MySQL Daten in JTable anzeigen AWT, Swing, JavaFX & SWT 2
H Swing Jtable extra spalte AWT, Swing, JavaFX & SWT 6
S Swing Rechteck über JTable zeichnen (per MouseListener) AWT, Swing, JavaFX & SWT 1
S Swing Mal wieder JTable Ansicht aktualisieren AWT, Swing, JavaFX & SWT 10
A JTable mit Daten füllen AWT, Swing, JavaFX & SWT 1
VfL_Freak Swing Einzelne Zeile in jTable selektieren klappt nicht AWT, Swing, JavaFX & SWT 7
N AWT jTable CellRenderer AWT, Swing, JavaFX & SWT 6
T Swing JTable valueChanged datensatz löschen AWT, Swing, JavaFX & SWT 1
0 Swing JTable aus anderer Klasse updaten AWT, Swing, JavaFX & SWT 5
S Jtable defaultRenderer wohin damit ? AWT, Swing, JavaFX & SWT 23
T Swing JTable / FocusListener AWT, Swing, JavaFX & SWT 0
it_is_all Warum wird die JTable im JDialog nicht angezeigt? AWT, Swing, JavaFX & SWT 1
L Swing JTable im Panel darstellen AWT, Swing, JavaFX & SWT 8
T Swing Double Click bei Buttons in JTable AWT, Swing, JavaFX & SWT 9
J addRow bei JTable AWT, Swing, JavaFX & SWT 6
M Jtable gibt -1 wert bei selectedRow und Column AWT, Swing, JavaFX & SWT 3
Meeresgott Swing JTable AWT, Swing, JavaFX & SWT 4
J JTable Selection Listener funktioniert nicht AWT, Swing, JavaFX & SWT 4
C Swing Daten in JTable wiedergeben per TableModel und MVC Pattern AWT, Swing, JavaFX & SWT 16
Z Swing Drag&Drop zwischen JTable und JTree AWT, Swing, JavaFX & SWT 4
Thallius JTable dynamisch Spaltenanzahl verändern AWT, Swing, JavaFX & SWT 2
Thallius JTable dynamisch laden? AWT, Swing, JavaFX & SWT 2
B Swing JTable sortieren AWT, Swing, JavaFX & SWT 2
T Swing JTable auslesen und befüllen AWT, Swing, JavaFX & SWT 8
B JTable wird nicht angezeigt AWT, Swing, JavaFX & SWT 1
J JTable und Suchlogik AWT, Swing, JavaFX & SWT 4
Viktim Swing JTable mit Tab verlassen AWT, Swing, JavaFX & SWT 1
F Swing Spaltenbreite einer Column eines JTable auslesen AWT, Swing, JavaFX & SWT 5
Viktim Swing JTable Mit Tab druch Zeilen Wechseln AWT, Swing, JavaFX & SWT 5
Thallius Warum refrehsed mein JTable nicht? AWT, Swing, JavaFX & SWT 5
Ghostman1711 Hinzufügen ausgewählter Dateinen des Filechoosers zu einem JTable AWT, Swing, JavaFX & SWT 9
S Swing JTable - Einzelne Rows einfärben AWT, Swing, JavaFX & SWT 11
M Wert einer Zelle aus JTable ziehen AWT, Swing, JavaFX & SWT 4
K JTable getValueAt() klappt nicht immer AWT, Swing, JavaFX & SWT 1
K JTable in extra Klasse, Zugriff in einer anderen klasse nicht möglich AWT, Swing, JavaFX & SWT 26
B Swing Tabelle(JTable) filtern swing GUI AWT, Swing, JavaFX & SWT 3
P JTable - bei Eingabe Selektion AWT, Swing, JavaFX & SWT 0
P Fokus auf Zelle in JTable AWT, Swing, JavaFX & SWT 1
S Swing Deselektion in JTable verhindern AWT, Swing, JavaFX & SWT 0
D Problem mit JTable AWT, Swing, JavaFX & SWT 1
N Swing Print JTable mit AbstractTableModel AWT, Swing, JavaFX & SWT 1
Ananaskirsche Swing jTable Reihen zuviel eingefügt AWT, Swing, JavaFX & SWT 12
P im JTable die Schriftfarbe ändern AWT, Swing, JavaFX & SWT 19
T Swing JTable wird nicht angezeigt AWT, Swing, JavaFX & SWT 4
S Dreiecke in bestimmte Zellen einer JTable AWT, Swing, JavaFX & SWT 9
LexeB4F Zelle in JTable gezielt einfärben AWT, Swing, JavaFX & SWT 4
LexeB4F JTable mehrere Zelle selektieren und inhalte Löschen.. Ideen gesucht AWT, Swing, JavaFX & SWT 1
D Swing JTable Renderer Grafikfehler AWT, Swing, JavaFX & SWT 0
K Swing JTable mit ImageIcon und Text in einer Zelle AWT, Swing, JavaFX & SWT 1
M Swing JTable GroupableHeader Background Color AWT, Swing, JavaFX & SWT 4
K Swing JTable updaten AWT, Swing, JavaFX & SWT 9
thet1983 Swing MySQL >> JTable AWT, Swing, JavaFX & SWT 5
J JTable bounds ändern durch resizing des Fensters AWT, Swing, JavaFX & SWT 9
F JTable Zellen-Hintergrund ändern AWT, Swing, JavaFX & SWT 7
O JTable linksbündig drucken (nicht der Zelleninhalt) AWT, Swing, JavaFX & SWT 2
Crazynet xls Datei in JTable AWT, Swing, JavaFX & SWT 3
O JTable ohne Rahmen printen AWT, Swing, JavaFX & SWT 3
L Swing JTable refresht die Column Namen nicht AWT, Swing, JavaFX & SWT 0
K JTable komplett durch andere ersetzen AWT, Swing, JavaFX & SWT 4
S JTable übernimmt Änderungen nicht AWT, Swing, JavaFX & SWT 2
Y JTable AWT, Swing, JavaFX & SWT 6
D Swing JCombobox in einem JTable vorbelegen AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen


Oben