Bonjour,
j'ai un petit problème avec le dessin d'images en java, je veux dessiner un curseur pour cela, j'ai eu l'idée de le faire a partir de plusieur la barre fixe en image et le triangle qui se déplace en image aussi, et je les colle dans mon image, le problème c'est que je dessine plusieurs a la fois et la ca ne veut pas coller mes images de barres ou de triangle voila mon code en esperant trouver une réponse ici svp Merci:
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
BufferedImage img= new BufferedImage(901, this.hauteur , BufferedImage.TYPE_INT_RGB);
     	File file= new File("E:/eclipse/workspace/TestBirt/reports/"+this.nom);
     	Graphics2D g2d= img.createGraphics();
 
     	//image= image.getScaledInstance(301, 51, Image.SCALE_DEFAULT);
 
     	RenderingHints rh = new RenderingHints(
        		RenderingHints.KEY_TEXT_ANTIALIASING,
        		RenderingHints.VALUE_TEXT_ANTIALIAS_OFF);
        RenderingHints rh2 = new RenderingHints(RenderingHints.KEY_ANTIALIASING,RenderingHints.VALUE_ANTIALIAS_ON);
        	g2d.setRenderingHints(rh);
        	g2d.setRenderingHints(rh2);
 
        g2d.setColor(Color.white);
        g2d.fillRect(0, 0, 2*img.getWidth(), img.getHeight());
        g2d.setColor(Color.black);
         g2d.setColor(Color.white);
        g2d.fillRect(301, 15, img.getWidth()-200, 40);
        g2d.setColor(Color.black);
        Font font = new Font("Times New Roman", Font.BOLD, 16);
 
        g2d.setFont(font);
        g2d.drawString(this.nom_axe2,2*img.getWidth()/3 + 30, 67);
 
        g2d.drawString(this.nom_axe1, img.getWidth()/12, 67);
        g2d.setColor(Color.black);
        //g2d.drawLine((int)(img.getWidth()/5), 55,(int)(img.getWidth()-100), 55);
       // g2d.drawLine((int)(img.getWidth()/5), 15,(int) (img.getWidth()/5), 55);
        //g2d.drawLine((int)(img.getWidth()/5), 15,(int)(img.getWidth()*4/5), 15);
        //g2d.drawLine((int)(img.getWidth()*4/5), 15, (int)(img.getWidth()*4/5), 55);
       // g2d.drawRect(img.getWidth()/3,img.getHeight()/3, img.getWidth()/3, (2*img.getHeight()/3)-20);
 
		font= new Font("Times New Roman", Font.PLAIN , 16);
		 g2d.setFont(font);
		 int j=0;
 
 
       float[] style = {10,5}; // longueur de pointillé noir et blanc
        float epaisseur= (float) 1.5;
         g2d.setStroke( new BasicStroke( epaisseur,
           BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER,
                10.0f,
                style,
                0
                ));
        //g2d.drawLine((int)(img.getWidth()/3+(7.25*(img.getWidth()/3)/14.25)), img.getHeight()/3, (int)(img.getWidth()/3+(7.25*(img.getWidth()/3)/14.25)), img.getHeight()-20);
        float[] style2 = {10,0}; // longueur de pointillé noir et blanc
        float epaisseur2= (float) 1.5;
         g2d.setStroke( new BasicStroke( epaisseur2, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 10.0f,style2,0 ));
 
        GradientPaint gp2 = new GradientPaint(20, 0, new Color(17, 255, 255), 20, 0, new Color(158, 176, 180), false);
       // g2d.setPaint(gp2);
        g2d.setColor(Color.black);
        if(this.double_curseur==true){
 
        	 g2d.setColor(Color.BLUE);
           	 Image image =  Toolkit.getDefaultToolkit().getImage("E:/eclipse/workspace/TestBirt/image_curseur.PNG");
 
        	 g2d.drawImage(image, img.getWidth()/3, img.getHeight()/3, null, this);	
        	 Image image_triangle= Toolkit.getDefaultToolkit().getImage("curseur.gif");
        	 g2d.drawImage(image_triangle, (int)((img.getWidth()/3+(this.valeur_axe2*(img.getWidth()/3)/14.25))-24), img.getHeight()/3-25, this);
        	 Image image_triangle_dessous= Toolkit.getDefaultToolkit().getImage("curseur_dessous.gif");
        	 g2d.drawImage(image_triangle_dessous, (int)((img.getWidth()/3+(this.valeur_axe1*(img.getWidth()/3)/14.25))-24), img.getHeight()/3+35-17, this);
 
        	g2d.setColor(Color.blue);
        	float[] style5 = {10,0}; // longueur de pointillé noir et blanc
     	    epaisseur= (float) 4;
     	     g2d.setStroke( new BasicStroke( epaisseur,
     	       BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER,
     	            10.0f,
     	            style5,
     	            0
     	            ));
 
 
        	g2d.dispose();
 
        	ImageIO.write(img, "PNG", file);
 
        	img.flush();
 
    		}