Bonjour,
Voilà cela fait quelques jours que je galère. J'ai lu pas mal de tuto sur le swing et je n'ai tjrs pas résolu mon problème.
Dans mon programme, j'ai une méthode que fait un peu de calcul (un peu long) et je voudrais pendant ce temps que mon IHM ne soit pas bloquée.
Voilà un schémas simplifié du programme :
et puis la méthode qui simule un calcul long est une vulgaire boucle for :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 final JButton button1 = new JButton("Longue opération de calcul"); button1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { new Thread(new Runnable() { public void run() { longueOperation(); SwingUtilities.invokeLater(new Runnable() { public void run() { button1.setVisible(true); } }); } }).start(); } });
S'il vous plait comment je dois faire pour que pendant que je suis dans la méthode calcul mon interface continue à réponde au click de la souris.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 void longueOperation() { for (int i=0;i<500;i++) { for (int j=0;j<500;j++) { for (int k=0;k<5000;k++) { } } Thread.yield(); } }
Je vous remercie par avance.
Partager