J'essaie de créer ma première application graphique en utilisant (Java + Eclipse + Swing). Ceci est mon code:Pourquoi mon application graphique basée sur Swing ne répond pas?
import java.awt.*;
import javax.swing.*;
public class HelloWorldSwing extends JFrame {
JTextArea m_resultArea = new JTextArea(6, 30);
//====================================================== constructor
public HelloWorldSwing() {
//... Set initial text, scrolling, and border.
m_resultArea.setText("Enter more text to see scrollbars");
JScrollPane scrollingArea = new JScrollPane(m_resultArea);
scrollingArea.setBorder(BorderFactory.createEmptyBorder(10,5,10,5));
// Get the content pane, set layout, add to center
Container content = this.getContentPane();
content.setLayout(new BorderLayout());
content.add(scrollingArea, BorderLayout.CENTER);
this.pack();
}
//============================================================= main
public static void main(String[] args) {
JFrame win = new HelloWorldSwing();
win.setTitle("TextAreaDemo");
win.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
win.setVisible(true);
}
}
Le code a été prise de here.
Lorsque j'exécute l'application à partir d'Eclipse, la fenêtre attendue apparaît (donc, c'est bon, je vois ce que je veux voir). Toutefois, lorsque j'essaie de fermer la fenêtre ou d'essayer d'écrire quelque chose dans la zone de texte, le programme se fige. L'OS m'écrit que le programme ne répond pas (je l'essaie sur Ubuntu).
Quelqu'un peut-il m'aider à trouver la raison du problème?
Merci d'avance pour toute aide.
J'ai essayé le code fourni et ça marche bien ... Y at-il autre chose que vous faites?Est-ce que cela fonctionne quand vous commentez le contenu du constructeur pour obtenir un 'JFrame' vide, et essayez de le fermer? –
Ce n'est pas une question de code. Cela fonctionne très bien sur ma machine Windows. ferme et écrit comme prévu. n'utilise-tu pas une beta jvm ou quelque chose? – Oso
J'ai essayé de commenter cette ligne du code: content.add (scrollingArea, BorderLayout.CENTER); et j'ai toujours le même problème. Une fenêtre vide apparaît et elle ne répond pas. – Roman