0

「ENTER」キーが押されたときにjtableにデータを追加したい在庫管理システムを開発していますが、その方法がわかりません。キーバインディングについて検索しましたが、その初期段階では何​​も役に立ちませんでした。キーを押したときに実行したいアクションは次のとおりです..

 private void addItemActionPerformed(java.awt.event.ActionEvent evt) {                                        
   int quantity,price;
   Product p=new Product();
   String[] result=new String[8];
   String data[]=new String[6];
   int i=0;
   result=p.getInfo(this.addItemField.getText());
    for(String s:result){
        data[i]=s;
        i+=1;
    }
    data[0]="1";
    quantity=Integer.parseInt(data[0]);
    price=Integer.parseInt(data[5]);
    int tPrice=price*quantity;
    data[5]=Integer.toString(tPrice);
    System.out.println(quantity+" "+price);
    table.addRow(data);
    this.addItemField.grabFocus();
  } 

ここに私のデフォルトのコンストラクターがあります

    public SellWindow() {

    initComponents();
    String title[]={"Qty","Code","Name","Unit Value","ml/kg","Line Total","Action"};
    entry.getColumnModel().getColumn(0).setPreferredWidth(20);
    table.setColumnIdentifiers(title);
    this.entry.setModel(table);

}
4

2 に答える 2

1

追加するデータが JTextField に入力されている場合、Enter キーを押したときに actionEvent が発生する必要があります。

inputField.addActionListener(listener);  

リスナーは、actionPerformed メソッドのコンテナーです。

しかし、それ以外の場合は、Nizil の提案に従い、KetListener を使用してください。

于 2013-07-23T14:31:04.997 に答える