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

avec Java Discussion :

pb avec txt box dans applet


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut pb avec txt box dans applet
    Bonjour,
    j'ai écrit le prg suivante,en l'exécutant,je n'ai pas obtenu le résultat que j'ai voulu
    voilà je vous explique
    dans le txt box apparait que:
    init called/n start called/n paint called/n,
    quand à paint called/n apparait plusieurs fois
    constructor called/n stop called/n destroy called/n apparaisent pas dans le txt box,
    et encore le rectangle aussi apparait pas
    veuillez m'aidez svp
    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
     
    import java.awt.*; 
    import java.applet.Applet; 
    public class ClassAllMethodsApplet extends Applet 
    { 
      TextArea messages=new TextArea(8,30); 
      //public void AllMethodsApplet() 
      public void constructor() 
      { 
     messages.append("Constructor called/n"); 
      } 
      public void init() 
      { 
     add(messages); 
     messages.append("init called/n"); 
      } 
      public void start() 
      { 
     messages.append("Start called/n"); 
      } 
      public void stop() 
      { 
     messages.append("Stop called/n"); 
      } 
      public void destroy() 
      { 
     messages.append("Destroy called/n"); 
      } 
      public void paint(Graphics display) 
      { 
     messages.append("Paint called/n"); 
     Dimension size=getSize(); 
     display.drawRect(0, 0,size.width-1,size.height-1);   
      } 
    }

  2. #2
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void constructor()
    Ce n'est pas un constructeur. Normal que celle méthode ne soit pas appelée.

    Voici ton code avec un vrai constructeur :
    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
    import java.awt.*; 
    import java.applet.Applet; 
    public class AllMethodsApplet extends Applet 
    { 
      TextArea messages=new TextArea(8,30); 
     
      public AllMethodsApplet () { 
         messages.append("Constructor called/n"); 
      } 
     
      public void init() 
      { 
     add(messages); 
     messages.append("init called/n"); 
      } 
      public void start() 
      { 
     messages.append("Start called/n"); 
      } 
      public void stop() 
      { 
     messages.append("Stop called/n"); 
      } 
      public void destroy() 
      { 
     messages.append("Destroy called/n"); 
      } 
      public void paint(Graphics display) 
      { 
     messages.append("Paint called/n"); 
     Dimension size=getSize(); 
     display.drawRect(0, 0,size.width-1,size.height-1);   
      } 
    }
    Que souhaites tu faire avec ton rectangle ?

    La méthode destroy sera appelée quand l'applet sera détruite.
    Donc ça ne me choque pas que tu ne le vois pas.


    Au passage, le retour à la ligne c'est '\n' et non '/n'.

  3. #3
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    mon question pourquoi le message stop called s'affiche pas?
    quand j'écris comme vous dite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public AllMethodsApplet ()
    la ligne est souligné et demande ajouter void.

    quand j'écris comme suivant il accepte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public class AllMethodsApplet ()
    pour le rectangle: je veux s'affiche un rectangle simplement

    pourquoi "paint called" s'affiche plusieurs fois?

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    684
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 684
    Par défaut
    merci beaucoup,vos aides m' aidé beaucoup

  5. #5
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 095
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 095
    Par défaut
    oups j'ai fait une bétise, je tente de la corriger (j'ai édité ton message sans le vouloir domxaline).
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2004
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 184
    Par défaut
    quand j'écris comme vous dites,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    "public AllMethodsApplet ()"
    la ligne est souligné et demande ajouter void.
     
    quand j'écris comme suivant il accepte :
    "public class AllMethodsApplet ()"
    Dans l'exemple que j'ai donné j'ai également changé le nom de ta classe
    ClassAllMethodApplet => AllMethodsApplet

    Tu n'as du changer que le nom du constructreur, d'où l'erreur de compilation.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public class AllMethodsApplet ()
    N'est pas un constructeur car il retourne quelque-chose.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 71
    Par défaut
    Mathieu a été plus rapide que moi sur le constructor

    Quant à la méthode paint, elle est appelée dès qu'il y a besoin de redessiner la zone (chose sur laquelle tu n'as pas la main). Du coup, oui, tu peux avoir plein d'appels à paint() et donc autant de fois d'appels à

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    messages.append("Paint called/n");
    Chez moi, ton code a écrit des "Paint called" en boucle dans le textArea

    stop() et destroy() ne seront appelés que quand tu arrêtes ton applet donc concrètement tu ne les verras jamais s'afficher...

    A propos de ton rectangle, il apparaît mais tu lui as mis quasiment les memes dimensions que l'applet, c'est pourquoi tu ne le vois pas.

    Essaie de mettre plutot :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Dimension size = getSize();
    display.drawRect(0, 0, size.width/2 - 1, size.height/2 - 1);
    Il va s'arrêter en plein milieu de l'appet... tu devrais le voir :p

    Enfin, je vois que tu utilises java.awt.TextArea. Je ne saurais que trop te conseiller d'utiliser plutôt javax.swing.JTextArea (java.awt est assez vieillot et mal foutu, javax.swing est plus récent et mieux pensé)

Discussions similaires

  1. [PHP 5.3] Récupérer un Array avec étiquette enregistré dans un fichier .txt
    Par Myst3ryssss dans le forum Langage
    Réponses: 6
    Dernier message: 08/03/2012, 10h17
  2. bouton avec une icone dans une applet java
    Par choko83 dans le forum Applets
    Réponses: 5
    Dernier message: 30/10/2008, 12h57
  3. Geler des txt box dans un forms
    Par Peter2 dans le forum IHM
    Réponses: 8
    Dernier message: 12/06/2007, 21h46
  4. [Access] Nom d'une table avec un espace dans SQL
    Par Corsaire dans le forum Langage SQL
    Réponses: 7
    Dernier message: 21/04/2006, 15h50
  5. [GifDecoder] marche pas dans applet avec IE
    Par formentor dans le forum Applets
    Réponses: 2
    Dernier message: 06/05/2003, 10h43

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