Как узнать, какой столбец был изменен при использовании TableColumnModelListener - PullRequest
0 голосов
/ 01 июня 2019

Я использую TableColumnModelListener на JTable , чтобы узнать, когда Столбец изменяется.

Я взглянул на объект ChangeEvent внутри метода columnMarginChanged(ChangeEvent e), но не нашел способа узнать, какой столбец был изменен.

Есть ли способ?

Ответы [ 2 ]

2 голосов
/ 01 июня 2019

Я не нашел способа узнать, какой столбец был изменен.

В методе columnMarginChanged() вы можете использовать:

TableColumn resizingColumn = table.getTableHeader().getResizingColumn();
1 голос
/ 01 июня 2019

Вместо TableColumnModelListener вы можете добавить прослушиватель свойства для каждого отдельного TableColumn, размер которого вас интересует:

columnModel.getColumn(0).addPropertyChangeListener(
    new PropertyChangeListener() {
        @Override
        public void propertyChange(PropertyChangeEvent event) {
            if (event.getPropertyName().equals("width")) {
                int oldWidth = (Integer) e.getOldValue(); 
                int newWidth = (Integer) e.getNewValue(); 
                // etc.
            }
        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...