내 테이블 (Java 8)에서 사용하기 위해 자체 SpinnerCellEditor를 빌드합니다. 기술적 인 스피너가 올바로 작동하지만 회 전자의 글꼴이 너무 작아서 읽을 수 없습니다. 누구든지이 문제를 해결하는 방법을 알고 있습니까?테이블의 회 전자 텍스트가 너무 작습니다.
이 테이블
TableColumnModel aBookRatingModel = tab_Rat_Rating.getColumnModel();
aBookRatingModel.getColumn(2).setCellEditor (new BSSpinnerCellEditor());
결합 편집기
public class BSSpinnerCellEditor extends AbstractCellEditor implements TableCellEditor {
private JSpinner inputField;
private final static double min = 0.0;
private final static double max = 5.0;
private final static double step = 0.5;
public BSSpinnerCellEditor() {
inputField = new JSpinner (new SpinnerNumberModel (0.0, min, max, step));
inputField.setOpaque (true);
inputField.setBorder (null);
} // EOConstructor
public BSSpinnerCellEditor (float actValue) {
if (actValue < 0.0f || actValue > 5.0f)
actValue = 0.0f;
inputField = new JSpinner (new SpinnerNumberModel ((double) actValue, min, max, step));
inputField.setOpaque (true);
inputField.setBorder (null);
}
public BSSpinnerCellEditor (SpinnerModel aModel) {
inputField = new JSpinner (aModel);
inputField.setBorder (null);
}
public Component getTableCellEditorComponent (JTable table,
Object value, boolean isSelected,
int row, int column) {
TableModel aModel = table.getModel();
if (aModel != null && aModel instanceof BookRatingCriterionTableModel) {
BookRatingCriterionTableModel tModel = (BookRatingCriterionTableModel) aModel;
RatingCriterion aCriterion = tModel.getRatingCriterionAt (table.convertRowIndexToModel (row));
inputField.setValue (aCriterion.getRating());
} // EOIf
return inputField;
}
public Object getCellEditorValue() {
float retVal = ((Double) inputField.getValue()).floatValue();
if (retVal < min) {
inputField.setValue (min);
retVal = ((Double) min).floatValue();
}
else {
if (retVal > max) {
inputField.setValue (max);
retVal = ((Double) max).floatValue();
}
}
return retVal;
}
} 구현
결과는 보인다
추천나는 Combobox 셀 편집기에서 같은 문제가 있었다. border 속성을 null로 설정하여이를 해결했습니다. 그러나 이것은 여기서 작동하지 않습니다. 나는 해결책이나 비슷한 문제를 찾았지만 아무 것도 발견하지 못했다.
정보 나 팁이 있어야합니다.
안부 인 Joerg
두 가지 - 첫째, 그래서 우리는 현재이 구현하는 방법을 볼 수있는 몇 가지 코드를 게시하시기 바랍니다 수 있습니다. 둘째, 지금까지 무엇을 시도 했습니까? –
안녕 Francis. 당신의 도움을 주셔서 감사합니다. 나는 나의 추가 된 정보가 좋다는 것을 희망한다. – Crypticone