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 :

Affichage d'un JPane dans un JFrame


Sujet :

AWT/Swing Java

  1. #81
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    ok sa marche on peut passer à la prochaine phase comme je te l'ai expliqué. merci et j’attends tes instructions.
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  2. #82
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Le drag 'n drop que tu as programmé semble fonctionner
    car une image apparaît à l'endroit où tu largues le composant.
    Cette image est dessinée par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    	public void paintComponent(Graphics g){
    		super.paintComponent(g);
    		for(Iterator<Composant> it=liste.iterator();it.hasNext();)
    		{
    			Composant ce=(Composant)it.next();
    			g.drawImage(ce.image,ce.x,ce.y,ce.longueur,ce.largeur,null);
    		}
    	}
    Si l'application s’arrêtait là, on aurait pu s'en contenter.

    Mais voilà : Il faut qu'on puisse déplacer ce composant.
    Et là, ça ne marchera pas car c'est très très compliqué de cliquer sur l'image dessinée et la déplacer.

    Comment faire simple ?

    Au lieu de peindre une image, il faut placer un vrai composant dans la DropZone.
    Un petit Jpanel auquel on pourra ajouter des évènements "souris" fera parfaitement l'affaire (on peindra l'image de Composant au fond de ce JPanel).
    Tu dois donc créer une nouvelle classe qui étend JPanel pour réaliser l'insertion et le placement dans la DropZone.
    Une fois que c'est fait, tu postes le code et on passe au système de déplacement.
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  3. #83
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    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
     
    package monpackage;
     
    import java.awt.Dimension;
    import java.awt.Graphics;
     
    import javax.swing.JPanel;
     
    public class ComposantDeplacable extends JPanel{
    	public Composant composant;
    	public ComposantDeplacable(Composant c){
    		composant=c;
    		setPreferredSize(new Dimension(composant.longueur,composant.largeur));
    	}
    	public void paintComponent(Graphics g){
    		super.paintComponent(g);					
    		g.drawImage(composant.image, composant.x, composant.y,composant.longueur,composant.largeur,null);
    }
    }
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  4. #84
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    ComposantDeplacable me semble OK
    il faut maintenant modifier la méthode insert de la DropZone pour ajouter ce ComposantDeplacable à la DropZone
    voir pour cela :
    - Layout null pour la DropZone
    - méthode setBounds appliquée à ComposantDeplacable
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  5. #85
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    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
     
    package monpackage;
     
    import java.awt.Dimension;
    import java.awt.Graphics;
     
    import javax.swing.JPanel;
     
    public class ComposantDeplacable extends JPanel{
    	public Composant composant;
    	public ComposantDeplacable(Composant c){
    		composant=c;
    		setPreferredSize(new Dimension(composant.longueur,composant.largeur));
    	}
    	public void paintComponent(Graphics g){
    		super.paintComponent(g);					
    		g.drawImage(composant.image, composant.x, composant.y,composant.longueur,composant.largeur,null);
    }
    }
    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
     
    package monpackage;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.Point;
    import java.awt.datatransfer.DataFlavor;
    import java.util.ArrayList;
    import java.util.Iterator;
     
    import javax.swing.JPanel;
    import javax.swing.TransferHandler;
     
    public class DropZone extends JPanel{
    	ArrayList<ComposantDeplacable> liste;
    	public DropZone()	{
    		setTransferHandler(new DropTransfertHandler());
    		this.setBackground(Color.white);
    		setLayout(null);
    		liste=new ArrayList<>();
    	}
    	public void insert(ComposantDeplacable c){
    		liste.add(c);
    		repaint();
    	}
    	public void paintComponent(Graphics g){
    		super.paintComponent(g);
    		for(Iterator<ComposantDeplacable> it=liste.iterator();it.hasNext();)
    		{
    			ComposantDeplacable ce=(ComposantDeplacable)it.next();
    			ce.setBounds(ce.composant.x, ce.composant.y,ce.composant.longueur,ce.composant.largeur);
    			add(ce);
    		}
    	}
    }
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  6. #86
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Ce n'est pas la conclusion à laquelle tu aurais du arriver :

    dans la classe DropZone :

    1) c'est le travail de la méthode insert de placer le ComposantDeplacable
    -> c'est dans cette méthode qu'il faut utiliser le setBounds

    2) il est inutile de mettre le ComposantDeplacable dans un ArrayList (la classe JPanel a sa propre liste de composants)
    -> tu dois supprimer l'ArrayList

    3) ce n'est pas le travail de paintComponent que de placer un composant sur l'écran
    -> tu dois donc supprimer purement et simplement la méthode paintComponent
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  7. #87
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    c'est parce que je dois pouvoir sauvegarder les informations sur les composants de la dropZone que je stocke chaque composant dans une arraylist s'il y a un autre moyen comme tu le dis comment l'utiliser?
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  8. #88
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Ah oui, pour pouvoir recharger un écran qui aura été composé avec la DropZone.
    Bon, dans ce cas c'est Ok.

    Il y a une autre méthode de JPanel qui est getComponents() qui permet d'obtenir la liste effectives des composants se trouvant sur la DropZone.
    - avantage : si un composant est supprimé de la DropZone, la liste est à jour.
    - inconvénient : la liste de composants n'est pas typée ; il faut faire un "cast" pour obtenir un ComposantDeplacable

    ArrayList :
    - avantage : la liste de composants est typée ; on peut manipuler directement les ComposantDeplacable
    - inconvénient : il faut mettre à jour l'ArrayList à chaque insertion/suppression de composants

    ... à ce stade, les deux se valent ; à toi de choisir.

    Il faut quand même faire les corrections 1 et 3 expliquées dans mon post précédent.
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  9. #89
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    c'est déjà fait l’attend les instructions pour la suite
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  10. #90
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Pour déplacer un ComposantDeplacable dans la DropZone, il faut que le ComposantDeplacable réagisse à l'évènement "drag" de la souris.
    On ne va pas utiliser le protocole Drag and Drop car un simple MouseMotionListener sera suffisant en utilisant sa méthode mouseDragged.
    Quand on va maintenir la souris appuyée sur le ComposantDeplacable la méthode mouseDragged va récupérer les coordonnées de la souris de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    MouseMotionAdapter mma = new java.awt.event.MouseMotionAdapter() {
                @Override
                public void mouseDragged(java.awt.event.MouseEvent evt) {
                    Point p = evt.getPoint();
                }
            }
    ici j'ai utilisé un MouseMotionAdapter pour ne pas avoir à redéfinir toutes les autres méthodes du MouseMotionListener.

    Ajoute le MouseMotionAdapter au ComposantDeplacable et tâche de voir les coordonnées de déplacement de p avec :
    Une fois que tu vois que ces coordonnées s'affichent au fur et à mesure que la souris se déplace,
    imagine un système qui permet alors que le ComposantDeplacable suive le mouvement
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  11. #91
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    bon là je suis un peux confus car je dessinais mes composants je devais juste changer les coordonnées et utiliser la méthode repaint() et comme je les ajoutes comment modifier leur position dans mon dropZone?
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  12. #92
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Poste à nouveau les deux classes DropZone et ComposantDeplacable que je vois où tu en est
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  13. #93
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    bon là j'effectue les déplacements mais le coordonnées sont un peux bizarre car lorsque j'effectue le déplacement dans le dropzone des coordonnées négatives apparaissent je ne sais pas pourquoi voilà mes code:
    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
     
    package monpackage;
     
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.Point;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseMotionListener;
     
    import javax.swing.JPanel;
     
    public class ComposantDeplacable extends JPanel implements MouseMotionListener{
    	public Composant composant;
    	public int x,y;
    	public DropZone d;
    	public ComposantDeplacable(Composant c,DropZone dz){
    		composant=c;
    		d=dz;
    		setPreferredSize(new Dimension(composant.longueur,composant.largeur));
    		addMouseMotionListener(this);
    	}
    	public void paintComponent(Graphics g){
    		super.paintComponent(g);					
    		g.drawImage(composant.image, composant.x, composant.y,composant.longueur,composant.largeur,null);
    }
    	@Override
    	public void mouseDragged(MouseEvent e) {
    		Point p=e.getPoint();
     
    			d.ModifPosition(this, p);
    			System.out.println(p.x+" "+p.y);
     
    	}
    	@Override
    	public void mouseMoved(MouseEvent e) {
     
    	}
    }
    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
     
    package monpackage;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.Point;
    import java.awt.datatransfer.DataFlavor;
    import java.util.ArrayList;
    import java.util.Iterator;
     
    import javax.swing.JPanel;
    import javax.swing.TransferHandler;
     
    public class DropZone extends JPanel{
    	ArrayList<ComposantDeplacable> liste;
    	public DropZone()	{
    		setTransferHandler(new DropTransfertHandler());
    		this.setBackground(Color.white);
    		setLayout(null);
    		liste=new ArrayList<>();
    	}
    	public void insert(ComposantDeplacable c){
    		liste.add(c);
    		add(c);
    		c.setBounds(c.x, c.y,c.composant.longueur,c.composant.largeur);
    	}
    	public void ModifPosition(ComposantDeplacable c,Point p){
    		c.setBounds(p.x, p.y,c.composant.longueur,c.composant.largeur);
    	}
    }
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  14. #94
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Bon, c'est pas mal.
    Maintenant, le problème c'est un phénomène de "tremblotement" au moment du déplacement.
    Il est causé par l'application directe des nouvelles coordonnées.

    Il faut y aller plus doucement et n'appliquer que la différence entre l'ancienne position de la souris et la nouvelle position.
    Pour cela, on enregistre l'ancienne position en conservant l'évènement précédent.
    1) on crée une variable MouseEvent chargée de conserver l'ancienne position
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        private java.awt.event.MouseEvent evt_prec = null;
    2) on calcule la différence de position et on applique que cette différence :
    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
        @Override
        public void mouseDragged(MouseEvent e) {
    //		Point p=e.getPoint();
    //
    //			d.ModifPosition(this, p);
    //			System.out.println(p.x+" "+p.y);
     
            if (evt_prec == null) {
                evt_prec = e;
                return;
            }
            int dX = e.getX() - evt_prec.getX();
            int dY = e.getY() - evt_prec.getY();
     
            Point loc = new Point(getLocation().x + dX, getLocation().y + dY);
            setLocation(loc);
     
        }
    tu verras que le glissement est nettement plus doux.
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  15. #95
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    bon là c'est beaucoup mieux maintenant nous allons aborder la partie la plus difficile la liaisons entre les composants. ici l'idée c'est de relier les composants entre eux avec des lignes qui seront réactives aux clic de la souris je doit avouer que je n'ai aucune idée sur comment faire j’attends tes instructions.
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  16. #96
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Nan, nan, il ne faut pas attendre

    Tu dois d'abord essayer par toi-même car il est possible que tu trouves une meilleure solution que moi.

    J'ai été très directif pour le drag 'n drop car tu étais mal parti,
    mais maintenant que tu es sur un nouveau palier de ton application il faut y aller.

    Comme d'habitude, une fois que tu as quelque chose, tu postes le code et on en discute.
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  17. #97
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    ok
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  18. #98
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    bon j'essaie de me connecter a ma bd mysql j'ai télécharger mysql jdbc et lorsque je veux me connecter on m'affiche le message suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
     
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    voila mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    		String pilote = "com.mysql.jdbc.Driver";
     
    		try{
    			Class.forName(pilote);
     
    			Connection connexion = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/hospital","root","pass");
    			//msg.dialog("OK");
    			Statement instruction = connexion.createStatement();
    		}catch(Exception e){
    			//msg.dialog("!OK \n"+e);
    			System.out.print(e);
    		}
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  19. #99
    Membre actif
    Homme Profil pro
    Ingénieur de construction de réseaux
    Inscrit en
    Août 2012
    Messages
    406
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Ingénieur de construction de réseaux
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2012
    Messages : 406
    Points : 235
    Points
    235
    Par défaut
    c'est bon le service mysql n’étais pas démarré
    La force d'un programmeur ne réside pas dans le fait qu'il écrive des codes puissants mais dans sa capacité à les maintenir!!!

  20. #100
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    Et ta liaison entre composants sur la DropZone ?
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

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

Discussions similaires

  1. Problème d'affichage d'un JPanel dans un JFrame.
    Par Patrick95500 dans le forum Agents de placement/Fenêtres
    Réponses: 8
    Dernier message: 18/09/2014, 13h51
  2. Affichage d'un JLabel dans une JFrame
    Par Christophe39 dans le forum Agents de placement/Fenêtres
    Réponses: 1
    Dernier message: 17/02/2014, 13h41
  3. Affichage de différents JPanel dans une JFrame
    Par PROJECT-AURORA dans le forum Débuter
    Réponses: 13
    Dernier message: 16/11/2013, 11h22
  4. Ajout et affichage d'un JPanel dans une JFrame lorsqu'un évènement se produit
    Par bilou_12 dans le forum Agents de placement/Fenêtres
    Réponses: 0
    Dernier message: 27/03/2012, 20h27
  5. [pdf][jframe] affichage d'un PDF dans un JFrame
    Par r.matha dans le forum Documents
    Réponses: 3
    Dernier message: 06/10/2006, 15h00

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