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

Applets Java Discussion :

Difficulté à créer une JApplet.


Sujet :

Applets Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 10
    Par défaut Difficulté à créer une JApplet.
    Bonjour à tous,

    Je dois créer un Applet, ressemblant à un Editeur Graphique simplifié. Je me suis donc inspiré du cours et des exemples ici:
    Introduction au dessin en Java par Christophe Dujardin.

    Si j'ai bien comprit, il affiche le résultat dans un JFrame or je voudrais créer une Applet ou JApplet. Donc je me suis dit je vais étendre la classe principale à JApplet:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class Main extends JApplet{
     
     
     
        public static void main(String[] args) {
    Malheureusement, ça ne marche pas, et rien ne s'affiche dans mon applet... Vous avez une idée du problème et de ce qu'il faut changer dans le code?

    En vous remerciant,
    Samuel.

  2. #2
    Membre éprouvé
    Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 83
    Par défaut
    Bonjour,

    Va falloir regarder de près les tutoriaux sur les applets ...
    pour commencer :
    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
     
    import javax.swing.JApplet;
    import javax.swing.JLabel;
    import javax.swing.JScrollPane;
     
    public class MonApplet extends JApplet 
    {
       @Override
       public void destroy()
       {
          super.destroy();
         System.out.println("MonApplet:Destroy");
       }
     
       @Override
       public void init()
       {
          super.init();
          System.out.println("MonApplet:init");
       }
     
       @Override
       public void start()
       {
          super.start();
          System.out.println("MonApplet:start");
       }
     
       @Override
       public void stop()
       {
          super.stop();
          System.out.println("MonApplet:stop");
       }
     
       public MonApplet()
       {
          System.out.println("MonApplet:constructor");
          JScrollPane myScroll = new JScrollPane(new JLabel("Hello World"));
          setContentPane(myScroll);
       }
     
    }
    Les méthodes importantes dans la vie d'une applet :
    init start stop et destroy .... bon courage !
    A++

  3. #3
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 10
    Par défaut
    Okish, merci, je regarde ça...

    EDIT: Alors j'ai regardé un peu les applets...
    J'ai réussi à créer une applet simple sans problème. Mais j'arrive toujours pas à faire ce que je veux : /

    Je vais vous présenter mes éléments:

    Un GrandPanneau contenant 2 autres JPanel:
    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
    public class GrandPanneau extends JPanel{
     
      private  JPanneauGraphique pg;
      private  JPanneauDeControle pc; 
     
      public GrandPanneau(){
            pg = new JPanneauGraphique();
            pc = new JPanneauDeControle(pg);
     
            pc.setPreferredSize(new Dimension(200,200));
            pg.setPreferredSize(new Dimension(400,200)); 
     
            this.add(pg);
            this.add(pc);  
        }
     
    }
    Un JPanneauDeControle contenant que des éléments simple (JButton, JLabel...):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    public class JPanneauDeControle extends JPanel{
    ...
    Un JPanneauGraphique contenant une méthode paint:
    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
    public class JPanneauGraphique extends JPanel {
     
        private List dessinables = new LinkedList();
     
        public void paint(Graphics g) {
            for (Iterator iter = dessinables.iterator(); iter.hasNext();) {
                Dessinable d = (Dessinable) iter.next();
                d.draw(g);
            }
        }
     
        public void ajouterFigure(Dessinable d) {
            dessinables.add(d);
            repaint();
        }
    Maintenant voici mon Applet:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public class Main extends JApplet{
        private GrandPanneau panneau;
     
        public void init(){
            panneau = new GrandPanneau();
     
            getContentPane().add(panc);
        }
    Le problème est que ça ne marche pas, je pense que cela est du au JPanneauGraphique qui possède une méthode paint... J'ai essayé de créer mon Applet avec uniquement un JPanneauDeControle ça marche sans problème...
    PS: J'arrive à afficher le JPanneauGraphique et le JPanneauDeContrôle dans une JFrame, mais pas dans une applet.

    Donc là je suis perdu...

  4. #4
    Membre expérimenté

    Avatar de christopheJ
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Indre et Loire (Centre)

    Informations forums :
    Inscription : Avril 2004
    Messages : 1 600
    Par défaut
    Il faut regarder dans la console Java pour savoir ce qui pose probleme....
    Tu as des chances de trouver une exception.

  5. #5
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 10
    Par défaut
    Bon j'ai trouvé la solution, j'ai mit les 2 méthodes (paint et ajouterFigure) de la classe JPanneauGraphique dans la classe Main contenant mon Applet et ça fontionne. Hop un autre problème de résolu.

    Merci à vous

Discussions similaires

  1. Réponses: 5
    Dernier message: 05/02/2010, 12h27
  2. Difficulté à créer une requette
    Par goodchip76 dans le forum Requêtes
    Réponses: 3
    Dernier message: 26/04/2008, 13h01
  3. [Réseau] Créer une connexion Internet
    Par Tranber dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 17/10/2002, 17h01
  4. Créer une fenêtre flottante qui ne peut avoir le focus
    Par BestofMac dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/07/2002, 10h46
  5. Peux t'on créer une copie locale de l'objet partagé?
    Par Anonymous dans le forum CORBA
    Réponses: 8
    Dernier message: 16/04/2002, 16h20

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