0
私はJTable
のセルエディタとしてJComboBox
を使用しています。 ComboBoxのドロップダウンリストから値の1つを選択すると、setValueAt
が呼び出されません。私は関数をオーバーライドしているので、これを知っています。このセルで選択された値に基づいて、同じテーブルの別のセルの値が固定されます。また、このイベントのどれがactionListener
であるかを知る必要があります。つまり、ComboBoxの値を変更するときです。JTableでセルエディタとしてJComboBoxを使用して変更を保存する
setValueAt
は、テーブル内の別のセルにフォーカスが変更されたときにのみ呼び出されます。テーブルの外側をクリックするだけでも役立ちません。
@Override
public void setValueAt(Object o,int row,int col)
{
super.setValueAt(o, row, col);
if(((String)o).matches("1"))
{
super.setValueAt(o, col-1, row+1);
return;
}
if(((String)o).contains("/"))
super.setValueAt(((String)o).substring(2), col-1, row+1);
else
super.setValueAt("1/"+(String)o, col-1, row+1);
}