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

Langage Java Discussion :

Affichage de 3 points


Sujet :

Langage Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 19
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2022
    Messages : 2
    Points : 4
    Points
    4
    Par défaut Affichage de 3 points
    Bonjour, j'aimerai créer un boucle for pour pouvoir tracer 3 cercles mais je ne sais pas comment faire pour sortir de la boucle pour modifier les coordonnées.
    Code secondaire :
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    import javax.swing.ImageIcon;
    import javax .swing.JPanel;
     
    import java.awt.event.MouseEvent;
     
    import java.awt.Graphics;
    import java.awt.event.MouseAdapter;	
    import java.awt.event.MouseMotionAdapter;
    import java.awt.Point;
    import java.awt.Color;
    import java.applet.Applet; 
    import java.awt.*; 
    import java.awt.event.*; 
     
    public class ImagePanel extends JPanel{
     
     
        ImageIcon image = new ImageIcon("./image.png");
     
        final int imgLargeur = image.getIconWidth();
        final int imgHauteur = image.getIconHeight();
     
        Point imgCorner;
        Point previousPoint;
     
        boolean objetClicked = false;
     
     
     
        ImagePanel(){
    		int x=0;
    		int y=0;
     
    		imgCorner = new Point(x,y);
     
            ClickListener clickListener = new ClickListener();
            this.addMouseListener(clickListener);
     
            DragListener dragListener = new DragListener();
            this.addMouseMotionListener(dragListener);
     
    			/**imgCorner = new Point(x,y);
                            System.out.println(imgCorner);  
                                                                    /**affiche les coordonnées du point en haut à gauche**/
     
    }
        public void ligne_horizontale(Graphics g){
     
    	for (int i=0;i<4;i=i+imgHauteur){
    		g.setColor(Color.BLACK);
    		g.drawLine(100+imgHauteur,100,100+imgHauteur,400);
    	}
    }
    	public void ligne_verticale(Graphics g){
    	for (int i=0;i<4;i=i+imgLargeur){
    		g.drawLine(100,100+imgLargeur,100,100+imgLargeur);
    		g.setColor(Color.BLACK);
    			}
    		}
     
        public void paintComponent(Graphics g){
     
    			for (int i=0;i<3;i++){
    			 imgCorner=Point (x+i*120,y+i*120);
            super.paintComponent(g);
            image.paintIcon(this, g,imgCorner.x,imgCorner.y);
          }   
     
    }
        private class ClickListener extends MouseAdapter
        {
            public void mousePressed(MouseEvent event)
            {
                objetClicked = true;
            }
     
            public void mouseReleased(MouseEvent event)
            {
                objetClicked = false;
            }
         }
     
     
        private class DragListener extends MouseMotionAdapter
        {
            public void mouseDragged(MouseEvent event)
            {
                if(objetClicked)
                {
                    imgCorner.setLocation(event.getPoint());
                    imgCorner.x -= imgHauteur/2;
                    imgCorner.y -= imgLargeur/2;
                    repaint();
                }
     
            }
        }
    }
    code principal:
    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
    import javax.swing.JFrame;
     
    public class Frame extends JFrame{
        Frame(){
            this.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE) ;
            this.setSize (1000, 1000);
            this.setTitle( "OTRIO") ;
            this. setLocationRelativeTo (null) ;
     
            ImagePanel imagePanel = new ImagePanel();        
            this.add (imagePanel);
     
            this.setVisible(true) ;
        }
     
        public static void main (String[ ] args)
        {        
            Frame frame = new Frame();
        }
    }

  2. #2
    Membre averti
    Avatar de Heavy Metal Hero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2007
    Messages : 152
    Points : 333
    Points
    333
    Billets dans le blog
    13
    Par défaut
    Voilà un exemple de code qui trace trois cercles:

    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
    package test.test;
     
    import java.awt.Graphics;
    import javax.swing.JFrame;
    import javax.swing.JPanel;
     
    public class CircleFrame extends JFrame {
        CircleFrame() {
            this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            this.setSize(1000, 1000);
            this.setTitle("Circles");
            this.setLocationRelativeTo(null);
     
            CirclePanel panel = new CirclePanel();
            this.add(panel);
     
            this.setVisible(true);
        }
     
        public static void main(String[] args) {
            CircleFrame frame = new CircleFrame();
        }
    }
     
    class CirclePanel extends JPanel {
        public void paintComponent(Graphics g) {
            super.paintComponent(g);
     
            // Draw 3 circles with incremented coordinates
            for (int i = 0; i < 3; i++) {
                int x = 100 + i * 120;  // Increment the x coordinate by 120 at each iteration
                int y = 100 + i * 120;  // Increment the y coordinate by 120 at each iteration
                g.drawOval(x, y, 100, 100);  // Draw a circle at the given coordinates
            }
        }
    }

Discussions similaires

  1. Geotools et affichage d'un point sur la carte
    Par ICS123 dans le forum SIG : Système d'information Géographique
    Réponses: 11
    Dernier message: 28/06/2009, 10h53
  2. [JpGraph] Affichage d'un point avec jpgraph
    Par jerenforce dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 30/09/2008, 23h34
  3. niveau d'affichage sur share point
    Par david foray dans le forum SharePoint
    Réponses: 1
    Dernier message: 22/07/2008, 17h04
  4. Geotools et affichage d'un point sur la carte
    Par ICS123 dans le forum 2D
    Réponses: 10
    Dernier message: 03/09/2007, 14h43
  5. [C#] Affichage aleatoire de points ....!?
    Par christophebmx dans le forum Windows Forms
    Réponses: 2
    Dernier message: 16/01/2005, 15h13

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