Hallo,
ich hab eine Tabelle und darin einige JSpinner.
Ich möchte nun die Werte aus den Spinnern auslesen. Das Problem ist, dass die Werte nicht ausgelesen werden. Es wird immer nur der Werte ausgelesen der anfangs in den Spinner eingetragen wurde. Verstelle ich den Spinner wird immer noch der alte Wert ausgelesen.
Ich hab das Gefühl, dass das Programm die Wertänderung im Spinner nicht mitbekommt. Kann das sein?
So lese ich den Wert aus:
Stimmt daran etwas nicht?
Meine Spinner CellRenderer und CellEditor sehen so aus:
Ich hoffe ihr könnt mir weiterhelfen :-(
Danke!
ich hab eine Tabelle und darin einige JSpinner.
Ich möchte nun die Werte aus den Spinnern auslesen. Das Problem ist, dass die Werte nicht ausgelesen werden. Es wird immer nur der Werte ausgelesen der anfangs in den Spinner eingetragen wurde. Verstelle ich den Spinner wird immer noch der alte Wert ausgelesen.
Ich hab das Gefühl, dass das Programm die Wertänderung im Spinner nicht mitbekommt. Kann das sein?
So lese ich den Wert aus:
Java:
table.getValueAt(i, 9)
Meine Spinner CellRenderer und CellEditor sehen so aus:
Java:
public class SpinnerEditor extends AbstractCellEditor implements TableCellEditor {
final JSpinner spinner = new JSpinner();
// Initializes the spinner.
public SpinnerEditor(String[] items) {
spinner.setModel(new SpinnerListModel(java.util.Arrays.asList(items)));
}
// Prepares the spinner component and returns it.
public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) {
spinner.setValue(value);
return spinner;
}
public boolean isCellEditable(EventObject evt2) {
if (evt2 instanceof MouseEvent) {
return ((MouseEvent) evt2).getClickCount() >= 2;
}
return true;
}
// Returns the spinners current value.
public Object getCellEditorValue() {
return spinner.getValue();
}
}
public class SpinnerRenderer extends JSpinner implements TableCellRenderer {
SpinnerRenderer(final String[] spinnerwerteArray) {
setModel(new SpinnerListModel(Arrays.asList(spinnerwerteArray)));
}
public Component getTableCellRendererComponent(final JTable table,
final Object value, final boolean isSelected,
final boolean hasFocus, final int row, final int column) {
setValue(value);
return this;
}
}
Ich hoffe ihr könnt mir weiterhelfen :-(
Danke!
Zuletzt bearbeitet: