Maison >Java >javaDidacticiel >Comment éviter les lignes en double dans une JTable lors de l'utilisation d'un modèle de données personnalisé ?

Comment éviter les lignes en double dans une JTable lors de l'utilisation d'un modèle de données personnalisé ?

DDD
DDDoriginal
2024-12-25 22:33:12568parcourir

How to Prevent Duplicate Rows in a JTable When Using a Custom Data Model?

Valeurs en double dans les lignes JTable résolues

Malgré le remplissage de la JTable avec un DataModel personnalisé, les données répétitives persistaient dans chaque ligne. Cependant, après une inspection plus approfondie, le modèle de données est resté intact.

Enquête et résolution

Le problème provenait du référencement involontaire à plusieurs reprises aux mêmes données de ligne. La solution consistait à s'assurer que chaque ligne contenait une liste de tableaux distincte.

Exemple de code

Voici un exemple de code complet démontrant l'implémentation corrigée :

public void populate(Collection c) {
    data.clear();
    for (Item i : c.getItems()) {
        ArrayList<String> row = new ArrayList<>(); // Create a new array list for each row
        for (Property p : i.getProperties().values()) {
            row.add(p.toString());
        }
        data.add(row);
    }
    fireTableDataChanged();
}

En créant une liste de tableaux distincte pour chaque ligne, le modèle de données et JTable affichent avec précision les données prévues.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn