Est-ce un bug de rendu Swing Java 7?

J’ai fait une simple application Swing. Mais le rendu se comporte en buggy. Ai-je fait quelque chose de mal ou est-ce un bug?

C’est simple, un petit JFrame avec un champ de texte, un bouton et une liste vide. Si je redimensionne d’abord la fenêtre horizontalement, puis que je tape dans le champ de texte, le bouton disparaît subitement.

Voici mon code:

public class App extends JFrame { public App() { JTextField messageFld = new JTextField(); JButton saveBtn = new JButton("Save"); JPanel inputPanel = new JPanel(new BorderLayout()); inputPanel.add(messageFld, BorderLayout.CENTER); inputPanel.add(saveBtn, BorderLayout.EAST); JList list = new JList(); JPanel panel = new JPanel(new BorderLayout()); panel.add(inputPanel, BorderLayout.NORTH); panel.add(list, BorderLayout.CENTER); this.getContentPane().add(panel); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setTitle("Test application"); this.pack(); this.setVisible(true); } public static void main(Ssortingng[] args) { SwingUtilities.invokeLater(new Runnable() { public void run() { new App(); } }); } } 

Voici quelques captures d’écran:

  1. Au démarrage

    entrez la description de l'image ici

  2. Après redimensionnement horizontal

    entrez la description de l'image ici

  3. Après avoir tapigré quelques caractères dans le champ de texte

    entrez la description de l'image ici

  4. Après avoir déplacé la souris sur le bouton

    entrez la description de l'image ici

J’utilise Windows 7, Java 1.7.0 et Eclipse Indigo SR1. J’ai utilisé JDK 1.7.0.0 et suis maintenant passé à JDK 1.7.0.10 mais j’ai toujours le même problème.

Lorsque j’imprime les propriétés du système, j’obtiens ce résultat:

 System.out.println(System.getProperty("java.version")); System.out.println(System.getProperty("java.runtime.version")); > 1.7.0_01 > 1.7.0_01-b08 

Si le problème est causé par votre pilote graphique, la définition d’une des propriétés système ci-dessous peut vous aider. Pas tout à fait sûr si les accessoires sont toujours supportés par Java 7.

 sun.java2d.d3d=false sun.java2d.ddoffscreen=false sun.java2d.noddraw=true 

J’utilise eclipse helios service release 2 et java 1.6 et je n’ai pas ce bogue; Ça fonctionne bien pour moi. Cependant, cela ne me laissera pas append de parameters à JList … peut-être parce que j’utilise une ancienne version de java … donc en gros, avec ma configuration et aucun paramètre pour JList, cela fonctionne … Je ne sais pas si cela fonctionne. va vous aider, mais ce sont mes observations