Я создаю приложение Java Swing с Java. У меня есть JPanel
, в котором есть JTable
с пользовательским TableModel
. Теперь я хочу знать, можно ли зарегистрировать envet, тогда, если в табличной модели я запускаю это событие, JPanel
перехватывает это событие и выполняет метод.
Это мой TableModel
:
public class MyTableModelScontriniArticoli extends defaultTableModel {
private static final String[] columnNames = {"Cod.Prod.", "Descrizione",
"Qta", "Prezzo cad.", "% Sconto", "Prezzo Tot"};
public HashMap<String, ArticoliScontrini> mappaArticoli =
new HashMap<String, ArticoliScontrini>();
private static NumberFormat decimalFormatter2 = new DecimalFormat("#,##0.00");
private Integer numeroPz = 0;
public Boolean gestisciTagliaColore;
public MyTableModelScontriniArticoli() {
}
public MyTableModelScontriniArticoli(boolean gestisciTagliaColore) {
super(columnNames, 1); // 10 righe iniziali (vuote)
mappaArticoli = new HashMap<String, ArticoliScontrini>();
this.gestisciTagliaColore = gestisciTagliaColore;
}
public MyTableModelScontriniArticoli(String[] columnnames2, int i) {
super(columnnames2, 1); // 10 righe iniziali (vuote)
}
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
super.setValueAt(aValue, rowIndex, columnIndex);
if (columnIndex == 2) {
//TO DO METHOD 2
//LAUNCH EVENT
} else if (columnIndex == 3) {
//TO DO METHOD 3
//LAUNCH EVENT
} else if (columnIndex == 4) {
//TO DO METHOD 4
//LAUNCH EVENT
} else if (columnIndex == 6) {
//TO DO METHOD 6
//LAUNCH EVENT
}
}
}
Мой tableModel
расширяется DefaultTableModel
. Теперь я переопределяю метод setValueAt
и хочу, чтобы после выполнения условия я мог запустить событие, а JPanel
, содержащий мой TableModel
, мог его перехватить и выполнить какой-то метод.