JTabel + HashMap + Checkbox

Hallo Leute,
wahrscheinlich wurde das Thema schon tausendmal behandelt, aber ich bekomme es nicht hin.

Ich lade eine HashMap in einen JTable (AbstractTableModel), wobei der letzte Wert ein Boolean ist und durch Klick verändert werden soll (tut sich nichts...). Ziel ist es, den wert boolean vom Auftrag auf true zu setzen und die Pos. in eine Rechung zu übertragen.


getColumnClass ist mit Boolean ausgestattet und Anzeige funktioniert soweit wunderbar.

Meine getValueAt

Java:
	public Object getValueAt(int row, int col)
	{	
		switch (col)
		{
		case 0: return orderPositions.get(row+1).getPosNr();
		case 1: return orderPositions.get(row+1).getAmount();
		case 2: return orderPositions.get(row+1).getArticle().getArticleNr();
		case 3: return orderPositions.get(row+1).getArticle().getArticleDescription();
		case 4: return euro.format(orderPositions.get(row+1).getArticle().getArticlePrice());
		case 5: return euro.format(orderPositions.get(row+1).getPositionPrice());
		case 6: return !orderPositions.get(row+1).isAccounted();
		default: return null;
		}
	}

Funktioniert super!

setValueAt (hier wird mindestens ein Fehler liegen!)

Java:
	public void setValueAt( Object val, int row, int col ) 
	{ 
	getValueAt( row, col ); 
	  fireTableCellUpdated( row, col ); 
	}


Handler ist in anderer Klasse eingebunden....
Aufruf beim JTable...

Java:
tb_InvoicePositions.getColumnModel().getSelectionModel().addListSelectionListener(new InvoiceToOrderHandler(this));

... einer von vielen Versuchen, die Werte neu anzeigen zu lassen.

Java:
	public void valueChanged(ListSelectionEvent event) {
            if (event.getValueIsAdjusting()) {       	
            	if (event.getValueIsAdjusting() == true)
            	{     		
                        invoiceToOrderPanel.tb_InvoicePositions.getValueAt(1, 6));     		
            		invoiceToOrderPanel.tb_InvoicePositions.setValueAt(Boolean.FALSE, 1, 6);     
            	}
                return;
            }
	}
 

Michael...

Top Contributor
setValueAt (hier wird mindestens ein Fehler liegen!)

Java:
	public void setValueAt( Object val, int row, int col ) 
	{ 
	getValueAt( row, col ); 
	  fireTableCellUpdated( row, col ); 
	}
Hier wird ja nichts geändert. Es wird der aktuelle Zellenwert ausgelesen und dann behauptet der Zellwert hat sich geändert.
Hier muss das relevante Objekt ermittelt werden (wie in der getValue) und dessen Zustand durch einen entsprechenden Methodenaufruf geändert werden.
 
Danke für die schnelle Antwort!
Die Methode wird dann also den Booleanwert Hashmap an Pos x aktualisieren und die Hashmap wird neu einlesen und den table updaten?

Da bleibt jedoch die Frage, wie ich an die aktuelle row komme. Mit Firstindex kann ich mir ja die col ausgeben lassen, aber wie weiß das Programm, dass es den Wert in der bestimmten Zeile ändern soll?

Schöner wäre es auch, wenn ich nur eine Zeile neu einlesen würde.


Ich entschuldige mich für die Anfängerfragen, aber ich sitze schon seit Nächten an diesem Programm und komm nich weiter.


Die Methode würde dann ungefähr so aussehen?

Java:
	public void changeBoolean(int row)
	{
		orderPositions.get(row+1).getPosNr();
		orderPositions.get(row+1).setAccounted(true);	
	}
 
Zuletzt bearbeitet:

Michael...

Top Contributor
Wie soll den der Boolean geändert werden? Ich bin davon ausgegangen, dass in der JTable eine JCheckBox angezeigt wird und man über (Doppel)klick den jeweiligen boolean auf true oder false setzt.
 
Ja, der Boolean soll von false auf true bzw. umgekehrt geändert werden. Funktioniert auch schon fast...

Wenn ich jetzt die Spalte mit dem Boolean anklicke funktioniert alles wunderbar. Sobald ich aber eine andere Spalte anklicke und dann wieder auf die Spalte mit der Checkbox klicke, passiert gar nichts. Hast vielleicht noch eine Idee Michael?
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
M jTabel mit Daten Füllen Java Basics - Anfänger-Themen 5
Salo JTabel Selection listener Bsp. Java Basics - Anfänger-Themen 3
S JTabel korrekt mit Datensätzen aus ResultSet füllen Java Basics - Anfänger-Themen 4
P JTabel größe ändern und button anzeigen Java Basics - Anfänger-Themen 5
G JTabel einlesen zeile für zeile Java Basics - Anfänger-Themen 6
L JTabel abfragen ob es eine erste Zeile gibt? Java Basics - Anfänger-Themen 2
T JTabel Zelleninhalt löschen. Java Basics - Anfänger-Themen 4
B Jtabel Inhalt vergleichen! Java Basics - Anfänger-Themen 4
H JTabel Selectionen abfangen Java Basics - Anfänger-Themen 2
S HashMap mehrere Keys zu einem Value Java Basics - Anfänger-Themen 3
A Daten aus einer HashMap aus einer DB speichern und mit neuen Werten vergleichen Java Basics - Anfänger-Themen 8
T HashMap Lsite gibt die sachen nicht aus wie gewollt. Java Basics - Anfänger-Themen 3
krgewb HashMap Java Basics - Anfänger-Themen 2
B Hashmap richtig bauen, die Tripel auf Zahl abbildet? Java Basics - Anfänger-Themen 10
"java.util.HashMap.get(Object)" is null Java Basics - Anfänger-Themen 10
berserkerdq2 Hashmap, wie prüfe ich ob ein Key schon existiert Java Basics - Anfänger-Themen 19
S Durch HashMap iterieren Java Basics - Anfänger-Themen 8
rafi072001 Sortieren einer HashMap nach Values Java Basics - Anfänger-Themen 2
F gson mit einer Hashmap Java Basics - Anfänger-Themen 2
J JSON-HashMap Java Basics - Anfänger-Themen 3
J Hashmap Java Basics - Anfänger-Themen 13
C Hashmap zickt Java Basics - Anfänger-Themen 9
S HashMap contains() Methode Java Basics - Anfänger-Themen 1
Z Satz aufteilen und die Wörter zählen (HashMap) Java Basics - Anfänger-Themen 15
N enum Attribut von Objekten einer Hashmap ausgeben Java Basics - Anfänger-Themen 6
P Verschachtelte Hashmap Java Basics - Anfänger-Themen 6
I Sortiert eine HashMap nicht gleich wie eine ArrayList? Java Basics - Anfänger-Themen 1
B HashMap alphabetisch sortieren Java Basics - Anfänger-Themen 2
J HashMap Java Basics - Anfänger-Themen 6
M Enum-Variable HashMap zuweisen Java Basics - Anfänger-Themen 5
U Hashmap Iterator selbst implementieren Java Basics - Anfänger-Themen 10
N HashMap in List good practice? Java Basics - Anfänger-Themen 2
K Value eines HashMaps in einer HashMap wiedergeben. Java Basics - Anfänger-Themen 5
O Hashmap, ArrayList, LinkedList Java Basics - Anfänger-Themen 7
O HashMap - ArrayList Java Basics - Anfänger-Themen 29
J Hashmap langsamer als compareTo? Java Basics - Anfänger-Themen 23
E HashMap+Vererbung Java Basics - Anfänger-Themen 11
J Erhöhen eines Values als Integer bei gleichen Keys in HashMap Java Basics - Anfänger-Themen 12
N Methoden HashMap interne Werte miteinander vergleichen Java Basics - Anfänger-Themen 7
W The type Long is not visible HashMap Java Basics - Anfänger-Themen 4
M Objekt mit Hashmap vergleichen Java Basics - Anfänger-Themen 22
S Gibt es für die Klasse HashMap Generic Implementierungen? Java Basics - Anfänger-Themen 11
C HashMap - alle keys haben values der letzten put-Anweisung Java Basics - Anfänger-Themen 3
J Hashmap auslesen Java Basics - Anfänger-Themen 7
F HashMap sortieren <String, Long> Java Basics - Anfänger-Themen 3
GreenTeaYT HashMap dupliziert meine Elemente? Java Basics - Anfänger-Themen 2
shiroX Methoden Morse-Code Übersetzer mit HashMap Java Basics - Anfänger-Themen 5
E HashMap Problem Java Basics - Anfänger-Themen 5
P Hashmap anstatt LinkedList? Java Basics - Anfänger-Themen 6
T HashMap und die Methoden Java Basics - Anfänger-Themen 13
N Methoden Interaktives PDF mit HashMap befüllen Java Basics - Anfänger-Themen 0
Z Hashmap auseinandernehmen und analysieren Java Basics - Anfänger-Themen 7
B Durchlaufen von Hashmap und Arraylist Java Basics - Anfänger-Themen 8
F HashMap oder welches Array? Java Basics - Anfänger-Themen 4
T HashMap Java Basics - Anfänger-Themen 24
L Hashmap mit variablem Key Java Basics - Anfänger-Themen 9
M Collections Probleme mit Hashmap Java Basics - Anfänger-Themen 4
N Collections String in HashMap umwandeln Java Basics - Anfänger-Themen 3
Z HashMap richtig benutzen Java Basics - Anfänger-Themen 2
lgund HashMap // TS3 Query Java Basics - Anfänger-Themen 7
Z Hashmap Iterator löscht nicht Java Basics - Anfänger-Themen 8
E Hashmap Wert auslesen Java Basics - Anfänger-Themen 2
S Printstream für einen Hashmap Loop Java Basics - Anfänger-Themen 1
dat_vin OOP Hashmap und Attribute Java Basics - Anfänger-Themen 7
C Check ob eine HashMap schon existiert Java Basics - Anfänger-Themen 16
P Vererbung Eigene HashMap Variante Java Basics - Anfänger-Themen 2
R Hashmap in anderer Klasse nicht benutzbar Java Basics - Anfänger-Themen 1
T Java Hashmap Java Basics - Anfänger-Themen 3
L Gibt es etwas wie "HashMap <String, String, String> Java Basics - Anfänger-Themen 9
K HashMap mit Daten aus ArrayList befüllen Java Basics - Anfänger-Themen 14
S OOP Klasse mit static-Eigenschaften - HashMap füllen Java Basics - Anfänger-Themen 6
O HashMap Fragen Java Basics - Anfänger-Themen 8
T HashMap Werte einfügen, durchsuchen und auslesen Java Basics - Anfänger-Themen 17
M Semantisches Problem HashMap/Netzwerk Java Basics - Anfänger-Themen 4
D HashMap Keys durchlaufen Java Basics - Anfänger-Themen 2
B Zugriff auf csv-Datei per hashmap Java Basics - Anfänger-Themen 5
M HashMap keys ausgeben Java Basics - Anfänger-Themen 2
S In einer Hashmap Klassen regestrieren Java Basics - Anfänger-Themen 2
H Collections Was ist schneller - HashMap + Sort v TreeMap? Java Basics - Anfänger-Themen 75
F HashMap nach kleinstem Value durchsuchen Java Basics - Anfänger-Themen 11
G HashMap Java Basics - Anfänger-Themen 6
F Wortpaare - HashMap - ArrayList Java Basics - Anfänger-Themen 6
M HashMap Frage Java Basics - Anfänger-Themen 3
M HashMap - put() reagiert nicht? Java Basics - Anfänger-Themen 8
N Cast eines Objektes in eine Hashmap Java Basics - Anfänger-Themen 13
A CSV Zeilenweise einlesen und in einer HashMap speichern Java Basics - Anfänger-Themen 12
A Input/Output Hashmap in einem JPanel via JList anzeigen Java Basics - Anfänger-Themen 8
K HashMap auf leere Key-Value-Paare prüfen Java Basics - Anfänger-Themen 14
F Hilfe bei der HashMap. Java Basics - Anfänger-Themen 3
F HashMap vs. TreeMap Java Basics - Anfänger-Themen 5
B HashMap Java Basics - Anfänger-Themen 9
C Collections String[] als value in HashMap Java Basics - Anfänger-Themen 6
V Hashmap Iterieren Java Basics - Anfänger-Themen 4
C Csv File in Hashmap ausgeben Java Basics - Anfänger-Themen 14
T HashMap<String,Object> Werte auslesen Java Basics - Anfänger-Themen 5
I HashMap sortieren Java Basics - Anfänger-Themen 10
I HashMap Java Basics - Anfänger-Themen 11
H Collections Brauche modifizierte HashMap Java Basics - Anfänger-Themen 6
H TreeMap/HashMap synchronisieren Java Basics - Anfänger-Themen 2
A Datentypen Hashmap to Array Java Basics - Anfänger-Themen 11

Ähnliche Java Themen

Neue Themen


Oben