JFrame de password

maitredede Messages postés 153 Date d'inscription vendredi 9 août 2002 Statut Membre Dernière intervention 18 septembre 2009 - 25 janv. 2005 à 14:41
j0r6l Messages postés 17 Date d'inscription mercredi 11 avril 2012 Statut Membre Dernière intervention 4 juin 2012 - 18 mai 2012 à 12:24
Bonjour



Je souhaiterais savoir si quelqu'un a réalisé, ou peux m'aider à
réaliser une fenêtre me permettant de saisir un login/mot de pass.
J'explique :

- Une fenêtre contenant un JTextField, un JPasswordField et un JButton (déjà fait).

- J'instancie la fenêtre, et j'appelle une fonction qui :

* me retourne si la saisie a été faite
(en cliquant sur un bouton OK -> non valide si on ferme la fenetre,
ou si on clique sur annuler

* me retourne le login/pass



Exemple d'appel :



String[] login,pass;

PassFrame p=new PassFrame();

boolean ok=p.demandePass(login,pass);



Si j'ai ok à true, j'ai le login dans login[0] et le pass dans pass[0].

3 réponses

Zigarn Messages postés 106 Date d'inscription mardi 13 juillet 2004 Statut Membre Dernière intervention 26 janvier 2005
26 janv. 2005 à 19:19
Tente du JOptionPane avec un panneau contenant tes composants comme message.

-------------------------------------------------
Débutant ... mais pas pour longtemps !
0
j0r6l Messages postés 17 Date d'inscription mercredi 11 avril 2012 Statut Membre Dernière intervention 4 juin 2012
18 mai 2012 à 12:22
J'ai fait quelquechose de ce genre là, mais je te préviens, mon code est un peu dégueu dégueuli dégueulasse, mais ca devrait t'aider à avancer. mon authentification se fait pour accéder à une base de donnée. Bonne chance ! =)
Si tu as une question, n'hésite pas... PS je suis moi aussi débutant donc ne t'étonne pas si certaines parties semblent incohérentes.

Première partie, une classe identification :

public class identification {
public String login;
public String mdp;
public identification(){
this.login="inconnu";
this.mdp="inconnu";
}
public identification(String log, String pwd){
init(log,pwd);
}
public identification(identification id){
init(id);
}
public void init(String log, String pwd){
this.login=log;
this.mdp=pwd;
}
public void init(identification id){
this.login=id.login;
this.mdp=id.mdp;
}
public String toString(){
return("login: "+login+", mdp: "+mdp);
}
public String getlogin(){
return login;
}
public String getmdp(){
return mdp;
}
public void setlogin(String log){
this.login=log;
}
public void setmdp(String pwd){
this.mdp=pwd;
}
}

Dans une second temps, l'interface qui va avec :

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.sql.*;
import java.util.*;

class authentificationV02 extends JFrame {
private JLabel bienvenue;
private JLabel demandeid;
private JTextField champlogin;
private JTextField champmdp;
private JButton validation;
private int statutconnextion;

public authentificationV02(){
super();
setTitle ("AuthentificationV02");
setBounds (100, 200, 250, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
bienvenue = new JLabel ("Bienvenue dans l'interface");
demandeid = new JLabel ("Veuillez vous identifier");
champlogin = new JTextField ("login", 15);
champmdp = new JTextField ("mot de passe",20);
validation = new JButton ("Valider");
MyListener myListener = new MyListener();
validation.addActionListener(myListener);
validation.setSize(50,25);


Container contenu = getContentPane();
contenu.setLayout (new GridLayout(5,1,5,5));
contenu.add(bienvenue);
contenu.add(demandeid);
contenu.add(champlogin);
contenu.add(champmdp);
contenu.add(validation);

setVisible (true);
}
class MyListener implements ActionListener
{
private String testuser;
private String testmdp;
private String profref;
private String nomprof;
private String profref0="0";
private String profref1="1";
private String profref2="2";
private String profref3="3";
private String profref4="4";

public void actionPerformed(ActionEvent event)
{
if((JButton)event.getSource() == validation)
{
identification id = new identification();
id.setlogin(champlogin.getText());
id.setmdp(champmdp.getText());
try {
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://127.0.0.1:3306/bdd";
String user = id.getlogin();
String passwd = id.getmdp();
Connection conn = DriverManager.getConnection(url, user, passwd);
if(conn != null) JOptionPane.showMessageDialog(null,"Connexion Réussie, Vérification de l'identité...");

Statement st = conn.createStatement();
String query "SELECT login_user,mdp_user,ref_professeur FROM utilisateur WHERE `login_user` '"+user+"'AND `mdp_user` = '"+passwd+"'";
ResultSet rs = st.executeQuery(query);

while (rs.next()) {
testuser = rs.getString(1);
testmdp = rs.getString(2);
profref = rs.getString(3);
}

Statement st1 = conn.createStatement();
String query1 "SELECT nom_prof FROM professeur WHERE `id_prof` '"+profref+"'";
ResultSet rs1 = st1.executeQuery(query1);

while (rs1.next()) {
nomprof = rs1.getString(1);
}

if(testuser.equals(user) && testmdp.equals(passwd)) JOptionPane.showMessageDialog(null,"Bonjour monsieur "+nomprof);

if(profref.equals(profref3)) {Vinelinterface v =new Vinelinterface();}
if(profref.equals(profref0)) {cdt1 c=new cdt1(); dispose();}
}
catch (Exception e) {
JOptionPane.showMessageDialog(null,"Exception: " +e.getMessage());
}
}

}
}
}
0
j0r6l Messages postés 17 Date d'inscription mercredi 11 avril 2012 Statut Membre Dernière intervention 4 juin 2012
18 mai 2012 à 12:24
j'ai oublié de préciser, c'est encore en chantier donc certaines conditions sont vides, mais l'interface marche, il n'y a aucun doute là dessus, je la teste tous les jours dans le cadre du développement de mon projet.

et il faut bien sur que tu te fasses le main qui executera la fenetre du genre authentificationv02 a=new authentificationv02();

bon courage
0
Rejoignez-nous