Я хотел бы знать, как получить ширину столбца после того, как пользователь изменяет его, чтобы я мог сохранить его.
После того, как я возился, я разработал этот метод, но он не идеален.если пользователь на самом деле не выбирает столбец, щелкая по строке столбца, то выбранный столбец равен -1, что выдает ошибку, поэтому я предотвратил это с помощью оператора if.
следующая проблема - еслия выбираю столбец, затем изменяю ширину, он работает и печатает ширину при изменении столбца, но если я выбрал, скажем, столбец 3, но затем продолжаю изменять ширину столбца 2 без выбора строки в этом столбце 2, он будет продолжатьвыкладывайте ширину столбца 3, когда я изменяю столбец 2. чтобы он работал, как и ожидалось, с помощью метода select, но должен быть лучший способ получить ширину столбца, который я изменяю.
любойидеи?
jt.getColumnModel().addColumnModelListener(new TableColumnModelListener() {
public void columnAdded(TableColumnModelEvent e) {
// TODO Auto-generated method stub
}
public void columnRemoved(TableColumnModelEvent e) {
// TODO Auto-generated method stub
}
public void columnMoved(TableColumnModelEvent e) {
// TODO Auto-generated method stub
}
public void columnMarginChanged(ChangeEvent e) {
int col = jt.getSelectedColumn();
if (col >= 0) {
TableColumn tc = jt.getColumnModel().getColumn(col);
System.out.println(tc.getWidth());
}
}
public void columnSelectionChanged(ListSelectionEvent e) {
// TODO Auto-generated method stub
}
});