IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Action sur un bouton


Sujet :

AWT/Swing Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 16
    Points : 6
    Points
    6
    Par défaut Action sur un bouton
    Je développe (ou essaye) une application RCP, et j'essaie de donner une action à un bouton qui permette de lancer une connexion à la base à partir d'un username et un password passés à l'aide de 2 composants Text.

    Par la suite j'essaie de donner une action à mon bouton Submit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
           btnSubmit.addSelectionListener(new SelectionAdapter() {    
                public void widgetSelected(final SelectionEvent e) {
                  Identification(txtUsername.getText(),txtPassword.getText());
                   MessageDialog.openInformation(getSite().getShell(),"Connexion","Censé ouvrir une connexion");
     
                   }
             });
    Quand on clique sur le bouton, il doit faire appel à l'action d'identification, qui va connecter l'utilisateur à la base, mais j'ai une erreur sur la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Identification(txtUsername.getText(),txtPassword.getText());
    The method Identification(String, String) is undefined for the type new SelectionAdapter(){}
    Pourtant j'ai bien dans ma class Identification:
    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
    public class Identification extends Action{
        String username;
        String password;
        IWorkbenchWindow window;
     
        Identification(String username,String password) {
            this.username = username;
            this.password = password;
     
       }
       public boolean authentication(String username,String password) {
          ...
            return true;
        }
     
        public void run() {
     
            if (authentication(username,password) == false) return ;    
     
        }
    }
    Donc je comprends pas le problème...
    J'espère avoir été assez compréhensible pour que vous puissiez m'aider .

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Identification(txtUsername.getText(),txtPassword.getText());
    cherche la méthode Identification dans ta classe anonyme.
    Il faut que tu crées une instance de la classe Identification
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Identification id = new Identification(txtUsername.getText(),txtPassword.getText());
    et apres tu appelles la méthode voulue sur id

  3. #3
    Futur Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Hmm, je dois la créer où l'instance?
    Si je la créé dans ma vue, il me répete le message d'erreur.


    Je dois dire que je suis assez paumé là, alors que je sens que c'est stupide... :s

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    si tu fais l'appel dans ta classe anonyme çà marche pas ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    btnSubmit.addSelectionListener(new SelectionAdapter() {    
          public void widgetSelected(final SelectionEvent e) {
                  Identification id = new  Identification(txtUsername.getText(),txtPassword.getText());
                  id.run();                MessageDialog.openInformation(getSite().getShell(),"Connexion","Censé ouvrir une connexion");
     
                   }
    });

  5. #5
    Futur Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Non, lorsque j'instancie Identification il me sort la même erreur.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    tu peux remettre ton code modifié stp

  7. #7
    Futur Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Le code de la vue utilisateur (où j'ai le formulaire donc, qui est censé faire appelle la classe action Identification:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
           btnSubmit.addSelectionListener( new SelectionAdapter(){
     
                public void widgetSelected(final SelectionEvent e) {
                    Identification id = Identification(txtUsername.getText(),txtPassword.getText());
                    id.run();
                    //Identification(txtUsername.getText(),txtPassword.getText());
                    MessageDialog.openInformation(getSite().getShell(),"Connexion","Et là, c'est censé se connecter, mais j'sais pas");
     
     
                   }
             });
    L'erreur est toujours la même:
    The method Identification(String, String) is undefined for the type new SelectionAdapter(){}

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    attention tu oublies le NEW devant Identification
    Identification id = new Identification(txtUsername.getText(),txtPassword.getText());

  9. #9
    Futur Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Oui, au temps pour moi, mais ça ne change pas grand chose à l'erreur ^^':
    The constructor Identification(String, String) is not visible
    Enfin je comprends pas pourquoi je dois faire tout ça, alors que pour afficher un MessageDialog, il suffit de l'appeler avec MessageDialog.openInformation(...)

    Java et moi ça fait 2, et RCP en plus, ça fait 15 xD.

  10. #10
    Membre confirmé Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Points : 554
    Points
    554
    Par défaut
    Citation Envoyé par DarkHope
    Oui, au temps pour moi, mais ça ne change pas grand chose à l'erreur ^^':

    Enfin je comprends pas pourquoi je dois faire tout ça, alors que pour afficher un MessageDialog, il suffit de l'appeler avec MessageDialog.openInformation(...)

    Java et moi ça fait 2, et RCP en plus, ça fait 15 xD.
    Ton constructeur est bien défini en tant que "public" ? (sur une source que tu passes, rien n'est précisé => je crois que la visibilité de l'accesseur se limite donc au package... Si ta classe qui fait un new n'est pas dans le même package, tu as cette erreur)

  11. #11
    Futur Membre du Club
    Inscrit en
    Septembre 2004
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 16
    Points : 6
    Points
    6
    Par défaut
    Arf...
    Il semblerait que ce soit ça, j'ai rajouté un public devant mon constructeur Identification, et l'erreur a disparu.
    Ca fonctionne pas encore, mais au moins y'a plus d'erreur ^^".

    Merci pour tout, je savais bien que c'était stupide comme erreur ...

    Par contre ce qui est bizarre c'est que je sois obligé d'appeler la méthode run(), alors que dans tout ce que je vois, il me semble qu'elle est automatiquement appelée lorsqu'on créé l'objet.

Discussions similaires

  1. Réponses: 4
    Dernier message: 06/08/2006, 12h50
  2. Action sur un bouton..Je comprends plus rien du tout!
    Par koolway dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 26/04/2006, 10h17
  3. Action sur un bouton
    Par brasco06 dans le forum Composants
    Réponses: 1
    Dernier message: 19/11/2005, 20h15
  4. [debutant] action sur un bouton
    Par EssaiEncore dans le forum ASP
    Réponses: 22
    Dernier message: 18/02/2005, 14h02
  5. [Flash MX] Action sur un bouton
    Par WriteLN dans le forum Flash
    Réponses: 9
    Dernier message: 20/10/2003, 14h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo