Я пишу проект Swing на Java, и недавно наткнулся на проблему.
У меня есть JTable
полный объектов (автопарк, полный автомобилей), и этот фрагмент кода изменяетсяположение 2 элементов.Если автомобиль не был выбран, установите координаты первого автомобиля.При следующем нажатии, если уже был выбран автомобиль, задайте координаты другого автомобиля.Затем, поменяйте местами элементы и сотрите координаты.
Теперь я также должен реализовать возможность «отменить» мой выбор, например, после выбора первой машины, если нажата клавиша, выбордолжны быть стерты.Есть идеи, как я могу это сделать?
jt.addMouseListener(new java.awt.event.MouseAdapter() {
int y1 = -1;
int x1 = -1;
public void mouseReleased(java.awt.event.MouseEvent e) {
if(x1 == -1 && y1 == -1) {
y1 = jt.rowAtPoint(e.getPoint());
x1 = jt.columnAtPoint(e.getPoint());
}
else {
int y2 = jt.rowAtPoint(e.getPoint());
int x2 = jt.columnAtPoint(e.getPoint());
Car tmp = (Car)carpark[y1][x1];
carpark[y1][x1] = carpark[y2][x2];
carpark[y2][x2] = tmp;
model.fireTableDataChanged();
x1 = -1;
y1 = -1;
y2 = -1;
x2 = -1;
}
}
});