bonjour,
j'ai un bouton qui lance un thread (ce thread récupère l'adresse IP d'un nom DNS):
La methode NetworkInterface.getByInetAddress(addrIP) met longtemps à répondre lorsqu'elle ne trouve pas l'adresse IP. Lorsque je lance le thread, je change le text du bouton par "arreter" et une fois terminé, je remet le text à "Executer".
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 // *************************************************************** // evenements private class ActionListener_bouton1 implements ActionListener{ private Thread t; @Override public void actionPerformed(ActionEvent arg0){ t = new Thread(new ThreadConfig()); t.start(); } } // *************************************************************** // configuration du module class ThreadConfig implements Runnable{ @Override public void run() { InetAddress addrIP; String host = textField1.getText(); textPane1.setText(""); bouton1.setText("Arrêter"); try { addrIP = InetAddress.getByName(host); textPane1.setText("1- Connexion : " + host + " => " + addrIP.getHostAddress()); } catch(Exception e){ textPane1.setText("1- Connexion : " + host + " => Erreur"); bouton1.setText("Executer"); return; } bouton1.setText("Executer"); } }
=> comment faire pour le stopper instantanément et ecrire un message dans mon textPane1 pour indiquer que le process à été arrêté (lorsque je reclic sur mon bouton) ?
Partager