Я создал JTable
с пользовательской табличной моделью (MyTableModel.java), и я использовал некоторый класс CellRenderer
для просмотра эффекта ячейки. Я использовал класс CustomTableCellRenderer
, чтобы изменить текущую ячейку как зеленый фон. Он отлично работает. В то же время я создал класс RenderPrice
, чтобы показать ячейку в десятичном типе, она принимает десятичное значение, когда я выполнял сначала, если я отредактирую ячейку, которая не обновлена, и она будет показывать знак $
в качестве префикса. Я хочу это решить. Пожалуйста, предоставьте некоторое решение как можно скорее. благодаряИзмените двойное значение в ячейке
класс RenderPrice код
class RenderPrice extends DefaultTableCellRenderer {
Object result;
RenderPrice() {
setHorizontalAlignment(SwingConstants.RIGHT);
}
public void setValue(Object aValue) {
result = aValue;
if ((aValue != null) && (aValue instanceof Number)) {
Number numberValue = (Number)aValue;
NumberFormat formatter = NumberFormat.getCurrencyInstance();
result = formatter.format(numberValue.doubleValue());
}
super.setValue(result);
}
}
предшествующий код моего TableClass (Accept.java)
gradeColumn = jTable1.getColumnModel().getColumn(2);
gradeColumn.setCellRenderer(new RenderPrice());
gradeColumn = jTable1.getColumnModel().getColumn(0);
gradeColumn.setCellEditor(new IntegerEditor(1,100));
gradeColumn = jTable1.getColumnModel().getColumn(0);
gradeColumn.setCellRenderer(new CustomTableCellRenderer());
gradeColumn = jTable1.getColumnModel().getColumn(1);
gradeColumn.setCellEditor(new ComboBoxCellEditor(comboBox));
все в большинстве своего/остальную часть коды, для лучшей помощи скорее опубликовать SSCCE или MCVE или MCTRE, короткий, работоспособный, компилируемый, примерно JTable в JFrame с закодированным значением, хранящимся в местной varibale для JTable/XxxTableModel – mKorbel
Я не могу уловить точку, пожалуйста, сообщите подробно – user3391137