Bonjour,

je vous explique mon problème :

je n'a pas pu me connecter à la base de donné
et les MessageDialog ne s'affiche pas


les MessageDialog: "connexion ok" et "connexion echouee" et"vous avez essaye plusieur fois ,reessayer plus tard!"

ne s'affichent pas seulement le MessageDialog "Connexion a la base echoue " qui s'affiche si EasyPHP est fermé . quand je clic sur le JButton il ne se passe rien dans les autre cas .

les autres Messages ne s'affiche pas et il n'a pas d'erreur dans le code .

Je ne sais pas quoi faire , aidez moi


Je remarqué un autre problème le MessageDialog "Connexion a la base echoue " s'affiche après un certain temps au lieu des autres Message Dialog

quel qu’un peut m'aidez

et merci d'avance


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
okButton = new JButton("OK");
				okButton.setActionCommand("OK");
				buttonPane.add(okButton);
				getRootPane().setDefaultButton(okButton);
				okButton.addActionListener(this);
 
 
				cancelButton = new JButton("Cancel");
				cancelButton.setActionCommand("Cancel");
				buttonPane.add(cancelButton);
				cancelButton.addActionListener(this);
public void actionPerformed(ActionEvent e) {
	if (e.getSource() == okButton) 
			{ 
			               //activer le progressBar
			       		   action();
			       		   progressBar.setString("validation");
			       		   progressBar.setStringPainted(true);  
			}
 
 
 
 
  if(e.getSource()==cancelButton)
            {System.exit(0);}
void action() 
     {
         .
         .
         .
         .
         .
         .
     }


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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
void action() {
 
	new Thread(new Runnable() {
		public void run() {
			try {
				progressBar.setValue(value);
				value++;
				Thread.sleep(15);
				} 
			catch (InterruptedException ex) {ex.printStackTrace();}
 
	if (progressBar.getPercentComplete() == 1.0) 
	  {
		// - Paramètres de connexion à la base de données
		    String url = "jdbc:mysql://localhost:8888/connexion";
		    String login = "root";
		    String password = "";
		    String driver = "com.mysql.jdbc.Driver";
 
		    String user = textField_user.getText();
			char[] passd = passwordField.getPassword();
 
		    try {
 
		  //Connexion à la base
		  Class.forName(driver); 
		  Connection   conn = DriverManager.getConnection(url,login,password);
 
		   //Création d'un objet Statement
		     Statement  st = conn.createStatement();
 
			//L'objet req contient le résultat de la requête SQL
		  String req="select login,pass from  user";
		  ResultSet rs = st.executeQuery(req);
 
		if ((user.equals(rs.getString("login"))) && (Arrays.equals(passd, rs.getString("pass").toCharArray())))
		    {
			JOptionPane.showMessageDialog(null, "connexion ok");
			System.exit(0);
		    }
 
		else { 
			JOptionPane.showMessageDialog(null, "connexion echouee");
			value = 0;
			progressBar.setValue(value);
			progressBar.setStringPainted(false);
			textField_user.setText("");
			passwordField.setText("");
			textField_user.requestFocus();
			s++;
			if(s==3){
				JOptionPane.showMessageDialog(null, "vous avez essaye plusieur fois ,reessayer plus tard!");
 
				System.exit(0);
	                }
		    }
 
		  //close Connection 
		  st.close();
		  conn.close();
 
		  }
		    catch(SQLException | ClassNotFoundException sqle){
				 JOptionPane.showMessageDialog(null,"Connexion a la base echoue ","Erreur",JOptionPane.ERROR_MESSAGE);
				 setAlwaysOnTop(true);
	        }   
 
 
	      }
	  else {action();}
	   }
      }).start();
	}

Je voulais afficher des JLabel mais je n'a pas pu les affichés aussi .


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
if ((user.equals(rs.getString("login"))) && (Arrays.equals(passd, rs.getString("pass").toCharArray())))
 
	              {  
		   //activer le JLabel
		   lblconnexion.setText("Access permitted !!");
 
		   //activer le progressBar
		   action();
		   progressBar.setString("validation");
		   progressBar.setStringPainted(true);
 
		   //activer le 2éme Menu (Réseau)
 
		   setJMenuBar(menuBar);
		   menuBar.repaint();
		   menuBar.setEnabled(true);
 
		   mRseau.repaint();
		   mRseau.setEnabled(true);
	        }
 
	   else {
		   lblconnexion.setText("Authentification echoue  !!");
		   lblconnexion.revalidate ();
		   }
 
	    }