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

Agents de placement/Fenêtres Java Discussion :

[awt][dialog]


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 66
    Points : 63
    Points
    63
    Par défaut [résolu][awt][dialog]
    Salut à tous,

    Je n'arrive pas à créer une classe heritant de la classe dialog.

    Voila mon constructeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    import java.awt.*
     
    public Dialog(Frame parent, String title, boolean modal)
    Et voila ce que le compilateur me retourne à la compilation:

    Erreur No. 300 : constructeur Dialog() introuvable dans classe java.awt.Dialog



    Merci de votre aide.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    76
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 76
    Points : 72
    Points
    72
    Par défaut
    Salut SpaceSurfer,

    je ne sais pas comment tu as déclaré ta classe, mais ça, ça marche :
    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
     
    import java.awt.*;
    import java.awt.event.*;
     
    public class MyDialog extends Dialog implements WindowListener, ActionListener
    {
      static final int WIDTH  = 220;
      static final int HEIGHT = 120;
     
      public MyDialog( Frame parent )
      {
        super( parent, "titre", true );  // true -> dialogue modale
        setBounds( parent.getX() + (parent.getWidth()-WIDTH)/2, parent.getY() + (parent.getHeight()-HEIGHT)/2, WIDTH, HEIGHT );  // et centrée en plus  :wink: 
        this.setResizable( false );  // non redimensionnable
        addWindowListener( this );
     
        // ajoute ici tes composants : boutons, champs textes, etc...
        // sans oublier dans les ajouter dans l'actionlistener (i.e. myButton.addActionListener( this );)
      }
     
      public void actionPerformed( ActionEvent evt )
      {
        Object obj    = evt.getSource();
        String target = evt.getActionCommand();
        if( obj instanceof TextField )
        {
          // getsion des textfields
        }
        else
        if( obj instanceof Button )
        {
          // gestion des boutons
        }
      }
      public void windowActivated( WindowEvent evt )    {}
      public void windowClosed( WindowEvent evt )       {}
      public void windowClosing( WindowEvent evt )
      {
        this.dispose();
      }
      public void windowDeactivated( WindowEvent evt )  {}
      public void windowDeiconified( WindowEvent evt )  {}
      public void windowIconified( WindowEvent evt )    {}
      public void windowOpened( WindowEvent evt )       {}
    }
    J'espère qu'avec tout cela tu vas t'en sortir,

    Bye,

    -David-

  3. #3
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 66
    Points : 63
    Points
    63
    Par défaut
    Parfait ca marche très bien !!

    En fait il me manquais cette ligne et sans celle ci JBuilder ne veut pas compiler

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    super( parent, "titre", true );  // true -> dialogue modale
    Merci encore pour ton aide !

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    Petite explication sur l'erreur:

    L'appel de super(parent,"titre",true) permet d'appeller le constructeur de la classe dont tu hérites (ici java.awt.Dialog).
    Comme ta classe hérite de Dialog, pour que tu puisses instancier correctement ton object, il faut que tu l'initialises d'abord avec un des constructeurs de Dialog. Dans ton cas tu choisis d'appeller le constructeur qui prend trois parametres (Frame, String, boolean).

    Mais si tu enlèves ce super(parent,"titre",true), le compilateur appelera automatiquement le constructeur par défaut (sans paramètre).
    Donc en fait si tu ne met pas super(parent,"titre",true), cela équivaut à mettre super() sans paramètre.

    Or je crois que la classe Dialog ne possede pas de constructeur sans parametres... Donc le compilateur ne peut pas instancier correctement l'objet et ca marche pas...

    a++

  5. #5
    Membre du Club
    Inscrit en
    Août 2002
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 66
    Points : 63
    Points
    63
    Par défaut
    Merci pour cette explication je ne connais pas cette subtilité (polymorphique) pour les contrcteurs.

    Merci @ tous pour votre aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Pop-up d'une dialog box a partir d'un bouton
    Par bobbyjack dans le forum MFC
    Réponses: 21
    Dernier message: 13/09/2005, 15h32
  2. Insertion dialog box dans feuille SDI
    Par Tom Joad dans le forum MFC
    Réponses: 3
    Dernier message: 12/04/2004, 00h04
  3. Difference entre fenetre et boite de dialog
    Par billyboy dans le forum Windows
    Réponses: 2
    Dernier message: 02/06/2003, 15h43
  4. Empecher le curseur de sortir du dialog
    Par Gadjo dans le forum MFC
    Réponses: 5
    Dernier message: 18/11/2002, 18h01
  5. Quoi ?! Common Dialog fait crasher DirectDraw ?
    Par Magus (Dave) dans le forum DirectX
    Réponses: 4
    Dernier message: 21/10/2002, 19h01

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