Я хочу разработать свинговое приложение биллинговой системы, но я застрял на месте. Я хочу после выставления счета выбрать строку JTable , чтобы перейти к первой строке для следующего биллинга, но после отправки последней или другой строки выбор происходит. Пожалуйста, помогите мне ...
[После события нажатия клавиши]
Связывание клавиш выглядит следующим образом ..
InputMap im = cartTable.getInputMap();
im.put(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0), "Action.NextCell");
im.put(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, 0), "Action.NextCell");
ActionMap am = cartTable.getActionMap();
am.put("Action.NextCell", new AbstractAction(){
@Override
public void actionPerformed(ActionEvent e) {
int col = cartTable.getSelectedColumn();
int row = cartTable.getSelectedRow();
if(col==0 && cartTable.getValueAt(row, col)==null){
ProductListForm productList=new ProductListForm();
productList.setVisible(true);
}else if(col==1 && ProductListForm.product.getName()!=null){
setValueToTable();
}else if(col==7){
calculateValue();
}else if(col==9){
calculateTotal();
row++;
col=-1;
}
col++;
cartTable.changeSelection(row, col, false, false);
cartTable.editCellAt(row, col);
}
});
Код представления счета: ..
if(evt.getKeyCode()==KeyEvent.VK_PAGE_DOWN){
JOptionPane.showMessageDialog(this, "Record Saved", "message", JOptionPane.OK_OPTION);
savePurchaseDetails();
saveStockDetails();
resetPage();
updateReturnTable();
int result=JOptionPane.showConfirmDialog(this, "Do you want to print reciept?", "Print Confirmation", JOptionPane.YES_NO_OPTION);
if(result==JOptionPane.YES_OPTION){
}
cartTable.changeSelection(0, 0, false, false);
}