Java Swing - добавление строки # столбца (заголовок строки) в JTable - PullRequest
2 голосов
/ 10 мая 2010

У меня есть данные из базы данных, загруженной в JTable через пользовательскую табличную модель. Я хочу иметь столбец (должен быть первым столбцом), который просто показывает номер строки display (т.е. он не привязан к каким-либо данным (или сортировке), а является просто номером строки на экране, начинающимся с 1). Эти «заголовки строк» ​​должны быть серыми, как заголовки строк.

Есть идеи, как это сделать?

Спасибо

Ответы [ 3 ]

1 голос
/ 10 мая 2010

Какую TableModel вы используете?

Вы можете переопределить public Object getValueAt(int row, int column), чтобы сделать это в вашей TableModel.

* 1006 Т.е. *

public Object getValueAt(int row, int column) {
    if(column == 1) {
        return row; 
    } ...
}

Если это не работает, когда вы сортируете свой JTable, тогда другое решение заключается в том, чтобы реализовать его в пользовательском TableCellRenderer и переопределить:

Component getTableCellRendererComponent(JTable table,
                                        Object value,
                                        boolean isSelected,
                                        boolean hasFocus,
                                        int row,
                                        int column)
0 голосов
/ 30 декабря 2014

Если вы хотите, чтобы заголовок строки оставался фиксированным на месте при горизонтальной прокрутке (как в Excel), то вы можете объединить две таблицы JTable вместе. Этот компонент показывает, как это делается:

* ** 1003 тысяча два *http://blue -walrus.com / 2014/12 / номер-строка-столбец-в-JTable /
0 голосов
/ 06 сентября 2010

Эта страница может быть тем, что вы ищете: http://www.chka.de/swing/table/row-headers/JTable.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...