0

したがって、作成したオブジェクトによって設定されるデフォルトのテーブル モデルがあります。オブジェクトの 1 つは Name で、オブジェクトの他の 3 つの文字列プロパティがあります。アクションを実行するボタンがあります。このボタンがこのアクションを実行すると、その DefaultTableModel 内のすべてのアイテムをループし、選択したオブジェクトと同じ値を持つ列 0 のすべてのアイテムを削除する必要があります。だから私が抱えている問題は、これがその値(名前)を持つ1つのアイテムだけを削除することです。列 0 と同じ文字列値を含むすべてのアイテムを削除するには、このコードが必要です。

                int nRow = suggestedAcTableModel.getRowCount() - 1;

                for (int i = 0; i < nRow; i++) {

                    String acNameStr = suggestedAcTableModel.getValueAt(i, 0).toString();

                    if (acNameStr.equals(acName)) {

                        suggestedAcTableModel.removeRow(i);
                    }
                }
4

1 に答える 1

3

各列で値を検索し、値が見つかった場合に行全体を削除する場合は、以下を参照してください。

for (int i = 0; i < suggestedAcTableModel.getRowCount(); i++) {
    for(int j = 0; j < suggestedAcTableModel.getColumnCount(); j++){
        String acNameStr = suggestedAcTableModel.getValueAt(i, j).toString();
        if (acNameStr.equals(acName)) { 
           suggestedAcTableModel.removeRow(i);
           j = suggestedAcTableModel.getColumnCount();
           i--;
        }
    }
}
于 2012-12-13T20:25:10.167 に答える