1 pièce(s) jointe(s)
Mauvaises Performances sur MACOS
Bonjour,
J'ai développé une application qui doit charger à partir d'une base de données une liste de près de 4000 entrées.
Sous Windows cela marche très bien et ne prend à peine que 2 secondes. Sous MAC il faut énormément de temps et même au bout d'une heure ce n'est pas terminé.
Je subodore un problème d'allocation dynamique différent sous OS/X et du Garbage Collector, mais je n'en suis pas sûr. Ou peut-être un problème de scrolling (je pencherais pour cela).
Ce que je veut faire :
Avoir une la liste avec les noms des items précédé par une case à cocher. En résumé, voici ce que je fais :
- Allocation d'un JScroll
- Ajout d'un JPanel dans le JScroll
- Ajouts de mes lignes dans le JPanel.
Au début j'avais essayé avec une JList mais sans succès.
Voici une partie du code.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
private void loadTitres()
{
try
{
java.sql.ResultSet rs =FilmTable.listerTitres("Titre_Francais");
if (rs== null) return;
while (true)
{
String titre = rs.getString("Titre");
if (isEmpty(titre)) continue ; // ignore
JCheckBox cb = new JCheckBox(titre);
cb.setForeground(Color.WHITE);
cb.setBackground(Color.BLACK);
monPanneau.add(cb);
}
rs.close();
monPanneau.revalidate();
monPanneau.repaint();
}
catch (Exception ex) { Common.afficherErreur(ex,"MaClasse","loadTitres");}
} |
Merci pour vos conseils, ou même une autre façon de programmer.