Recreation de mon applet

Signaler
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
-
Messages postés
5366
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
6 décembre 2021
-
Voila je voudrais recréé mon applet "MIKE LE PENDU JAVA" pour la rendre plus fluide. Sur les conseils de Twinuts il me dit que faire:

Twinuts dit "exemple herite de JApplet pas de Applet


et pour tes pseudo bouton utilise des JButton en fesant :


JButton bt = new JButton();
bt.setIcon(new ImageIcon("image.gif"));
bt.setFocusPainted(false);
bt.setMargin(null);
bt.setBorder(BorderFactory.createEmptyBorder());
bt.setContentAreaFilled(false);
bt.addActionListener(actions);


ensuite enleve les calcules de coordonnees du mouse event et passe pas ActionListener déja tu auras une execution plus fluide
Pour la position soit tu utilise les layout qui sont le mieux soit tu joue les barbares et tu le fais avec setBounds(int x, int y, int width, int height) ou setBounds(Recancle rec)"

Moi avec "Jcreator Le" je fait un noueau projet (Basic Java Applet) sa me donne ceci

import java.awt.*;
import java.applet.*;


public class Montest extends Applet {
 
 public void init() {
 }


 public void paint(Graphics g) {
  g.drawString("Welcome to Java!!", 50, 60 );
 }
}

Comment faire pour addapter les conseils de Twinuts dans ma class pour avoir des Jbutton. Que et ou placer les declaration (Inport, Jbutton (j'ai 27 boutons), ActionListeneret, public class Montest extends Applet, position des bouton ) il faut peut etre commencer par "Empty Project" .Je veut que mon appli puisse s'integrer dans une page html

Petit modele bienvenue Merci de m'apportez votre aide. (Je n'est que 5 jours d'experience en java)

12 réponses

Messages postés
5366
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
6 décembre 2021
111
Salut,


bon ceci n'est qu'un simple exemple de comment tu pourrais faire apres libre à toi de faire comme bon te semble :P


import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;


import javax.swing.BorderFactory;

import javax.swing.ImageIcon;

import javax.swing.JApplet;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JOptionPane;


public class Montest extends JApplet implements ActionListener{

    private static final long    serialVersionUID    = 1837289100466272306L;

    private JButton button1 = new JButton();

    private JButton button2 = new JButton();

    private JButton button3 = new JButton();

    private JButton button4 = new JButton();

    private JButton button5 = new JButton();

    private JButton button6 = new JButton();

    private JButton button7 = new JButton();

    private JButton button8 = new JButton();

    //.............

   

   

    public void init(){

        initButton(button1, "1.gif", this);

        initButton(button2, "2.gif", this);

        initButton(button3, "3.gif", this);

        initButton(button4, "4.gif", this);

        initButton(button5, "5.gif", this);

        initButton(button6, "6.gif", this);

        initButton(button7, "7.gif", this);

        initButton(button8, "8.gif", this);

       

       

        //pour le potitionnement moi j'utilise FlowLayout

        //c'est surtout pour faire au plus simple

        setLayout(new FlowLayout());

        add(button1);

        add(button2);

        add(button3);

        add(button4);

        add(button5);

        add(button6);

        add(button7);

        add(button8);

    }

   

    /**

     * Initialise un bouton

     * @param bt bouton a initialiser

     * @param image l'image du bouton

     * @param action je le met ici defois que tu ne veuille pas mettre le listener sur 'this'

     */

    private void initButton(JButton bt, String image, ActionListener action){

        bt.setIcon(new ImageIcon(image));

        bt.setFocusPainted(false);

        bt.setMargin(null);

        bt.setBorder(BorderFactory.createEmptyBorder());

        bt.setContentAreaFilled(false);

        bt.addActionListener(action);

    }

   

    public void actionPerformed(ActionEvent e) {

        //bon pour cette etape il y a plusieur ecoles

        //perso je prefere bosser sur une reference

        //de l'objet courrant plutot que le nom de l'action

        //apres c'est un choix

        Object src = e.getSource();

        if(src.equals(button1)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 1");

        }else if(src.equals(button2)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 2");

        }else if(src.equals(button3)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 3");

        }else if(src.equals(button4)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 4");

        }else if(src.equals(button5)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 5");

        }else if(src.equals(button6)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 6");

        }else if(src.equals(button7)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 7");

        }else if(src.equals(button8)){

            JOptionPane.showMessageDialog(this, "Clic sur le bouton 8");

        }

       

    }

   

    /**

     * Je ne veux toujours pas installer le plugin java pour

     * les applet donc je la transforme en appli standalone

     * @param args

     */

    public static void main(String [] args){

        JFrame f = new JFrame("Test Applet");

        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        Montest mt = new Montest();

        mt.init();

        f.setContentPane(mt);

        f.pack();

        f.setLocationRelativeTo(null);

        f.setVisible(true);

    }

}

Voila si tu as des question aux quels la javadoc ne repond pas fais signe.

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
Ok Merci je vais testé je revien dire le resultat
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
Encore 2 ou 3 petit souci

Quand je fait avec "Jcreator Le" execute projet j'ai bien une fenetre qui souvre avec mes boutons et quans  j'execute avec la page html j'ai un message en bas du navigateur
"Applet Montest notinited"

Aussi je voudrais que ma fenetre fasse 510 x 420
et pour les bouton il sont tous aligner centrer en haut comment les metre en position?
est ce que je peut faire le meme systeme Jlabel pour afficher les lettres?
et le truc la private static final long    serialVersionUID    = 1837289100466272306L;
c'est quoi ?

en fait je voudrais garder les a peu pres la meme disposition que dans mon Mike le pendu raté

Merci d'avance pour ton aide
Messages postés
5366
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
6 décembre 2021
111
Salut,


pour les applet ref une doc sur les applet.


oui tu peux faire la meme chose avec un JLabel mais l'avantage des
JButton est l'utilisation d'ActionListener de plus les JButton offre
plus de possibilitée qu'un JLabel qui n'est à la base qu'un etiquette


private static final long    serialVersionUID    = 1837289100466272306L;


c'est une variable demandé par eclipse pour la serialisation des objet donc sous JCreator tu t'en fou.


"en fait je voudrais garder les a peu pres la meme disposition que dans mon Mike le pendu raté"


ba, il est pas vraiment raté (il y a eu pire de posté sur le site) pour
garder la meme presentation du met le layout de l'applet à null et tu
joue avec setBounds

.....

setLayout(null);

button1.setBounds(x, y, width, height);

add(button1);

.....

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
Ok merci pour tous je vais attaquer mon projet.
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
C'est bien tous ca mais j'ai un grave probleme a integrer la Japplet dans ma page html 
erreur "Applet Montest notinited"
Messages postés
5366
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
6 décembre 2021
111
Salut,


je n'ai jamais eu ce problème cependant voici des liens qui pourront peut etre te mettre sur le bon chemin :


http://domino.automation.rockwell.com/applications/kb/RAKB.nsf/0/0DEEE099422B6F5A85256F650063A08F?OpenDocument

http://www.webdeveloper.com/forum/history/topic.php/84982-1.html

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
5366
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
6 décembre 2021
111
Oui verifie que la balise applet de ton fichier html contienne bien le codebase

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
J'ai pas tous compris la

<HTML>
<HEAD>
</HEAD>

<CENTER>

</CENTER>

</HTML>
Messages postés
5366
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
6 décembre 2021
111
Salut,

te manque la balise code base

<HTML>
<HEAD>
</HEAD>

<CENTER>

</CENTER>

</HTML>

cherche sur le net pour voir comment faire une balise applet

et pour ton prob d'Applet Montest notinited en cherchant bien tu trouveras une reponse

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
208
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
13 mars 2009
1
J'ai deja rechercher c'est toujours se modele la. Je vais encore rechercher Je suis deçu de bloquer la. 
Messages postés
5366
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
6 décembre 2021
111
Salut,

tiens vas ICI pour voir comment faire un fichier html contenant une applet

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA