Swing Alle Zeilen einer Spalte (jTable) zusammen zählen und in eine eigene Zeile das Ergebnis schreiben.

Philipp1904

Mitglied
Hallo,

ich würde gerne alle Zeilen aus einer Spalte (diese beinhaltet Integer) , zusammen zählen und dann in eine eigene Zeile das Ergebnis schreiben .Das würde ich gerne unter jeder Spalte machen.


EDIT : So sollte die Table am Ende aussehen ImageShack® - Online Photo and Video Hosting, wie man sieht ganz unten stehen die Summen der Spalten.


Bis jetzt sieht mein Quell-Code so aus :

Java:
public class TestTableModel extends AbstractTableModel {
private Integer [][]data = {{1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16},{0,0,0,0}};
 // Die {0,0,0,0} sind dafür da dass ich dort dann die Summen reinschreiben kann.

    @Override
    public boolean isCellEditable(int rowIndex, int columnIndex) {
        if(rowIndex <4 ){
            return true;
        }
        else{
            return false;
        }
    }
    

    @Override
    public int getRowCount() {
       return data.length;
    }

    @Override
    public int getColumnCount() {
        return 4;
    }

    @Override
    public Object getValueAt(int rowIndex, int columnIndex) {
            return data[rowIndex][columnIndex];
    }

    @Override
    public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
        data[rowIndex][columnIndex] = Integer.parseInt((String)aValue);
       System.out.println("Der Wert wurde zu "+ aValue.toString() +" verändert");
    }
   
}

Das wichtige ist aber auch dass wenn der Wert einer Zeile verändert wird dass dann auch automatisch das Ergebnis in der Zeile ganz unten stimmt.

Ich freue mich über jede Hilfe .

LG
 
Zuletzt bearbeitet:

ARadauer

Top Contributor
ich würd bei row count die länge +1 zurück geben und bei getValue überprüfen ob es die letze zeile ist und dann die summe zurück liefern.

ob dann schon automatisch beim ändern einer zelle die letze zeile auch neue berechnet wird... da bin ich mir nicht sicher, ich denke da wirst du noch eine fireTableDataChanged (oder wie die heißt) Methode aufrufen müssen...
 

Philipp1904

Mitglied
Das mit der rowCount + 1 habe ich probiert jedoch gibt es dann eine ArrayIndexOutOfBoundsException in der getValueAt .

Das Hauptproblem liegt darin dass ich nicht wirklich weiß wie ich mir die Werte aus den Zeilen holen soll aus einer Spalte , diese zusammen zähle und dann richtig in die letzte Zeile schreibe.

Es sollte am Ende so aussehen :

ImageShack® - Online Photo and Video Hosting

LG
 

ARadauer

Top Contributor
bekommst du eine ArrayIndexOutOfBoundsException ... ja klar...
bei getValue überprüfen ob es die letze zeile ist und dann die summe zurück liefern.
wenn dir das nicht klar ist würd ich mir nochmal überlegen was da passiert...

weiß wie ich mir die Werte aus den Zeilen holen soll aus einer Spalte , diese zusammen zähle und dann richtig in die letzte Zeile schreibe.
du weißt nicht wei du die summe einer spalte von einem zwei dimensionalne array bildest?
über die zeilen itererieren und die jeweilige spalte aufsummieren...

ich würd die werte gar nicht irgendwo hinschreiben... ich würd das immer in getValue berechnen...
 

ARadauer

Top Contributor
also konkret würd ichs so machen....

Java:
@Override
	public int getRowCount() {
		return data.length + 1;
	}

	@Override
	public Object getValueAt(int rowIndex, int columnIndex) {
		if (rowIndex == data.length) {
			return sumOfColumn(columnIndex);
		}
		return data[rowIndex][columnIndex];
	}

	private int sumOfColumn(int col) {
		int sum = 0;
		for (int[] row : data) {
			sum += row[col];
		}
		return sum;
	}
 

Philipp1904

Mitglied
Ganz toll erklärt , nun habe ich anhand deines Codes verstanden was du gemeint hattest .Ob wir schon in der letzten Zeile der Spalte sind.Es funktioniert jetzt .

Ich danke dir :toll: !

Nun muss ich nur noch herausfinden wie ich es schaffe dass die Summe auch aktualisiert wird sobald der Wert einer Zeile verändert wurde.
 

ARadauer

Top Contributor
Nun muss ich nur noch herausfinden wie ich es schaffe dass die Summe auch aktualisiert wird sobald der Wert einer Zeile verändert wurde.

füg mal in der setValueAt Methode ganz unten diese zeile ein

Java:
fireTableCellUpdated(data.length, columnIndex);

das teilt der Oberklasse AbstractTableModel mit dass sich in dieser Zelle ein Wert geändert hat...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Bluedaishi JTable alle Zeilen löschen AWT, Swing, JavaFX & SWT 7
_user_q Gibt es eine Möglichkeit, in Java alle möglichen Zeichen automatisch tippen zu lassen? AWT, Swing, JavaFX & SWT 13
_user_q JavaFX Wie kann ich alle Objekte außer eins deaktivieren (das Gleiche mit BoxBlur)? AWT, Swing, JavaFX & SWT 11
Davee JavaFX JavaFX Jar ausführbar jedoch nicht alle Stages AWT, Swing, JavaFX & SWT 3
F JFrame zeigt nicht alle Elemente auf anhieb an AWT, Swing, JavaFX & SWT 4
B Swing JButton deaktivieren, wenn nicht alle JTextFields ausgefüllt sind. AWT, Swing, JavaFX & SWT 2
S ActionListener für alle Buttons AWT, Swing, JavaFX & SWT 26
D JavaFX Alle Knöpfe auf die gleiche Größe AWT, Swing, JavaFX & SWT 14
M Gui-Form alle Labels anzeigen AWT, Swing, JavaFX & SWT 4
M Alle Schriftarten in JComboBox AWT, Swing, JavaFX & SWT 5
X Swing setContentPane verdeckt mir alle Buttons Labels etc... AWT, Swing, JavaFX & SWT 14
N Swing Alle Objekte anzeigen auch bei JPanel-Überlappung AWT, Swing, JavaFX & SWT 6
J CellEditorListener wird für ALLE Zellen ausgeführt AWT, Swing, JavaFX & SWT 2
T Alle Swing-Elemente anzeigen AWT, Swing, JavaFX & SWT 9
A JDialog (modal) blockiert alle Fenster! AWT, Swing, JavaFX & SWT 2
J Alle Komponenten eines JFrames durchlaufen AWT, Swing, JavaFX & SWT 2
C Swing JTattoo - Look and Feel für ALLE User AWT, Swing, JavaFX & SWT 5
T Swing Font für alle Komponenten ändern AWT, Swing, JavaFX & SWT 2
A Swing Alle Komponenten auf JFrame ermitteln AWT, Swing, JavaFX & SWT 4
O JFrame: Daten alle paar Sekunden aktualisieren AWT, Swing, JavaFX & SWT 3
X Alle Components eines JPanels Enablen AWT, Swing, JavaFX & SWT 7
AyKay SWT (alle) Listener bzw. ModifyEventListener entfernen AWT, Swing, JavaFX & SWT 2
D Funktion JList.getSelectedValues() gibt nicht alle values zurück AWT, Swing, JavaFX & SWT 2
E Swing TableCellRenderer für alle Splaten setzen?! AWT, Swing, JavaFX & SWT 3
V Alle offenen jDialoge schliessen AWT, Swing, JavaFX & SWT 3
M Alle Frame Methoden AWT, Swing, JavaFX & SWT 2
L 3D-Grafik Java3D - Alle SceneGraphObjects geordnet erhalten AWT, Swing, JavaFX & SWT 2
F Nicht alle Bilder werden angezeigt AWT, Swing, JavaFX & SWT 2
Iron Monkey Alle Anwendungen werden miniert AWT, Swing, JavaFX & SWT 2
D ALLE exceptions in Log fenster anzeigen AWT, Swing, JavaFX & SWT 17
C JTable: Alle selektierten Zellen abfangen AWT, Swing, JavaFX & SWT 13
J alle Ordner in einem Ordner anzeigen(Jlist) AWT, Swing, JavaFX & SWT 44
M Swing Dankeschön an alle AWT, Swing, JavaFX & SWT 8
S Java3D: Alle Objekte in BranchGroup löschen während Laufzeit AWT, Swing, JavaFX & SWT 3
kodela alle Buttons einer ToggleButtonGroup deselektieren AWT, Swing, JavaFX & SWT 2
Milady Annzeigen alle Daten aus der Tabelle AWT, Swing, JavaFX & SWT 6
B MDI Anwendung alle maximierten InternalFrames in Tabs AWT, Swing, JavaFX & SWT 3
J Swing Monospace-Schrift für alle Systeme AWT, Swing, JavaFX & SWT 3
M Swing Alle Elemente eines Panels? AWT, Swing, JavaFX & SWT 9
J Swing Eine(und zwar ein und die selbe) WindowListener Instanz für alle JFrames AWT, Swing, JavaFX & SWT 8
J Swing Alle JFrames AWT, Swing, JavaFX & SWT 18
aze JTextfield nur so breit dass alle zeichen sichtbar sind AWT, Swing, JavaFX & SWT 2
R Swing alle Frames nutzen das gleiche Model AWT, Swing, JavaFX & SWT 2
André Uhres Swing Alle Komponenten eines JPanel aktivieren/deaktivieren AWT, Swing, JavaFX & SWT 4
E Im Frame alle Componenten abrufen AWT, Swing, JavaFX & SWT 2
K Alle Events abfangen mit GlassPane AWT, Swing, JavaFX & SWT 7
T JTree - alle Nodes entfernen AWT, Swing, JavaFX & SWT 8
D JCheckBoxItem in Untermenüs alle gleichzeitig an- bzw. aus AWT, Swing, JavaFX & SWT 3
E Drag&Drop JTable; Renderer füllt alle Zellen AWT, Swing, JavaFX & SWT 10
G Alle Werte einer Spalte in JTable zusammenrechnen AWT, Swing, JavaFX & SWT 2
G Alle Komponenten eines JPanels durchlaufen AWT, Swing, JavaFX & SWT 11
T Alle Folgefenster sollen im Hauptfenster geöffnet werden AWT, Swing, JavaFX & SWT 3
P Alle Komponenten von JPanel in der Mitte entfernen AWT, Swing, JavaFX & SWT 2
G Eine Schiftart für alle Komponenten festlegen AWT, Swing, JavaFX & SWT 6
G WindowListener für alle Fenster AWT, Swing, JavaFX & SWT 4
H <Synth> Alle die sich auskennen Bitte hier rein schaue AWT, Swing, JavaFX & SWT 2
Paule alle Elemente eines SWT Trees AWT, Swing, JavaFX & SWT 8
H JFileChooser für alle Dateien und Directories unterhalb AWT, Swing, JavaFX & SWT 7
C Beim Schließen eines fensters, schließen sich alle AWT, Swing, JavaFX & SWT 5
G Nicht alle Komponenten werden angezeigt AWT, Swing, JavaFX & SWT 8
S Alle EventListener einer JComponent abfragen? AWT, Swing, JavaFX & SWT 3
0 JList alle 20 Sekunden aktualisieren? AWT, Swing, JavaFX & SWT 8
K Graphics-Objekt zeichnet nicht alle Bilder AWT, Swing, JavaFX & SWT 3
M Listener für alle inneren Elemente gültig machen? AWT, Swing, JavaFX & SWT 5
M JList zeigt nicht alle Elemente AWT, Swing, JavaFX & SWT 4
B Alle URLs aller offenen Browser. AWT, Swing, JavaFX & SWT 12
N Alle Pixel-Koordinaten von z.B. g.drawLine(.) speichern AWT, Swing, JavaFX & SWT 7
L Alle Inhalte in BorderLayout.CENTER löschen? AWT, Swing, JavaFX & SWT 2
N Alle Komponenten eines JPanel aktivieren/deaktivieren? AWT, Swing, JavaFX & SWT 5
J [SWT] alle Zellen in einem Tree einzeln selektieren AWT, Swing, JavaFX & SWT 2
T JTree alle nodes expanden AWT, Swing, JavaFX & SWT 4
M Hauptfenster und alle Kinder schließen? AWT, Swing, JavaFX & SWT 7
T Alle Kinder eines JTree bekommen AWT, Swing, JavaFX & SWT 11
G Double-Click f. alle Komps UNIX u. WIN verschieden ? AWT, Swing, JavaFX & SWT 5
P TableCellRender für ALLE Spalten AWT, Swing, JavaFX & SWT 10
G Alle Elemente eines JPanel herausfinden? AWT, Swing, JavaFX & SWT 3
Luma Alle Fenster verstecken und wieder sichtbar machen? AWT, Swing, JavaFX & SWT 6
D Alle Inhalte einer JTextArea in einem JScrollPane löschen AWT, Swing, JavaFX & SWT 2
P JTree: Alle Knoten geöffnet anzeigen AWT, Swing, JavaFX & SWT 2
P JTree: alle Elemente ausklappen AWT, Swing, JavaFX & SWT 3
bernd JTree: alle Laufwerke anzeigen AWT, Swing, JavaFX & SWT 3
B Alle jMenu und JMenuItem in einem Array AWT, Swing, JavaFX & SWT 4
R removeAll() beseitigt nicht alle Komponenten!? AWT, Swing, JavaFX & SWT 11
M JTabbedPane zeigt alle Panels übereinander an :( AWT, Swing, JavaFX & SWT 8
Encera TableView Zeilen als Spalten im SceneBuilder AWT, Swing, JavaFX & SWT 0
A Mit JavaFX einzelne Zeilen in TableView farbig markieren AWT, Swing, JavaFX & SWT 5
missy72 JavaFX TableView Spalte zwischen den Zeilen AWT, Swing, JavaFX & SWT 5
T TableView Zeilen einfärben AWT, Swing, JavaFX & SWT 13
HoT Sortieren von ein paar Zeilen in einer Tabelle, aber nicht die ganze Tabelle AWT, Swing, JavaFX & SWT 3
D JavaFX TextArea Probleme bei langen Zeilen AWT, Swing, JavaFX & SWT 1
N Textdatei GUI, Text in Textarea anzeigen mehrere Zeilen AWT, Swing, JavaFX & SWT 1
S JavaFX JavaFX TableView scrollen färbt falsche Zeilen AWT, Swing, JavaFX & SWT 1
adiko01 JTable: Nur markierte Zeilen aus der Tabelle in CSV exportiern AWT, Swing, JavaFX & SWT 9
H JTextArea - farbige Zeilen .. bitte um Vorschläge zur Implementierung AWT, Swing, JavaFX & SWT 1
M Befüllung der einzelnen Zeilen des TableView AWT, Swing, JavaFX & SWT 3
Viktim Swing JTable Mit Tab druch Zeilen Wechseln AWT, Swing, JavaFX & SWT 5
X Zeilen aus einer Textdatei einzelnd als String abrufen AWT, Swing, JavaFX & SWT 8
T CSS Rechtsbüdniges Label mit Zwei Zeilen AWT, Swing, JavaFX & SWT 7
J JavaFX TableView - Höhe der Zeilen AWT, Swing, JavaFX & SWT 3
stylegangsta JDialog bestimmte Zeilen kursiv AWT, Swing, JavaFX & SWT 20

Ähnliche Java Themen

Neue Themen


Oben