문제

jtable에 사용자 정의 셀 렌더러가 설정되어 있으며 작동하지만 대신 "x"는 "x"가 테이블 셀로 표시됩니다. "..."(3 점). 내가 놓친 게 무엇입니까 ??

  /***************************************************************************
 * Listener reagujący na dodanie nowej wartości
 **************************************************************************/
private static class ButtonRenderer extends JButton implements
        TableCellRenderer {
    /***********************************************************************
     * Konstruktor
     **********************************************************************/
    public ButtonRenderer() {
        super("x");
    }

    /***********************************************************************
     * @see TableCellRenderer#getTableCellRendererComponent(JTable, Object,
     *      boolean, boolean, int, int)
     **********************************************************************/
    public Component getTableCellRendererComponent(JTable table,
            Object value, boolean isSelected, boolean hasFocus, int row,
            int column) {
        return this;
    }

}
도움이 되었습니까?

해결책

버튼의 크기는 렌더링 된 "X"와 그 주위의 패딩을 포함하기에 충분히 크지 않습니다.

해결책은 테이블 셀을 확대하거나 패딩을 줄이는 것입니다 (항상 버튼이 테이블 셀과 크기가 같은 것으로 가정합니다).

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top