Bonjour,
Je suis en train de coder un clavier virtuel pour mon stage. J'ai eu l'idée, au lieu de mettre des gros boutons moches partout, de mettre une image au fond de ma frame et de récupérer les coordonnées d'un point cliqué pour interpréter une touche du clavier. mon problème vient de l'affichage de cette image. J'ai cherché des exemple et de l'aide sur tous les forum que cette galaxie a pu produire et une fois que j'ai trouvé une solution qui me satisfaisait, je l'ai implémentée. Seulement...marche po!
Me voila donc pour trouver l'aide de quelqu'un qui connait Java (ou je suis moi même ce qu'on appelle communément une grosse quille) qui pourrait inspecter mon code et me dire ce qui ne passe pas. Le compilateur ne me trouve ni erreur, ni warning.
Voici le code:
Puis voici mon main:
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 import java.awt.Container; import java.awt.Dimension; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JFrame; import javax.swing.JPanel; public class FenetreFrame extends JFrame { private Container c; private JPanel imagePanel; private String filePath; //adresse de l'objet (je m'en sers dans le main) public FenetreFrame(String filePath) { super("Image de fond"); this.filePath = filePath; try { jbInit(); } catch (Exception e) { e.printStackTrace(); } } private void jbInit() throws Exception { this.getContentPane().setLayout( null ); this.setSize( new Dimension(800, 195) ); this.setTitle( "Suncard Family" ); setDefaultCloseOperation(EXIT_ON_CLOSE); c = getContentPane(); imagePanel = new JPanel() { @Override public void paintComponent(Graphics g) { try { super.paintComponent(g); Graphics2D g2D=(Graphics2D)g; BufferedImage image = ImageIO.read(new File(filePath)); g2D.drawImage(image,0,0,null); } catch (IOException e) { e.printStackTrace(); } } }; imagePanel.setPreferredSize(new Dimension(800, 195)); c.add(imagePanel); } }
Voila....si vous me trouvez une solution je vous offre un an de bain-douche, un voyage au kazakhstan et des bons de reduction prisu! on dit merciiiiiiiiii
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public class Program { /* public Program() {} */ public static void main(String[] args) { String imagePath = "C:/Documents and Settings/Yann Gueganic/Mes documents/Developpement/Projets JDeveloper/Clavier_Virtuel/Clavier_Virtuel/Clavier_facile.jpg"; FenetreFrame fond = new FenetreFrame(imagePath); fond.pack(); fond.setVisible(true); } }! lol!
non, merci a vous par avance pour vos reponses.
Partager