Objet
Résolu/Fermé
titisoli
Messages postés
18
Date d'inscription
jeudi 26 janvier 2017
Statut
Membre
Dernière intervention
1 mars 2019
-
29 juil. 2017 à 21:33
KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 - 12 août 2017 à 16:46
KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 - 12 août 2017 à 16:46
A voir également:
- Objet
- Vente objet occasion entre particulier - Guide
- Objet requis vba - Forum VB / VBA
- Objet rare akinator ✓ - Forum Loisirs / Divertissements
- Lancez l'application. envoyez ce mail à manon (manon@pixmail.org) en mettant en copie nina (nina@pixmail.org) : objet : colis bonjour, votre colis est arrivé. que répond manon ? ✓ - Forum Loisirs / Divertissements
- Erreur définie par l'application ou par l'objet ✓ - Forum VB / VBA
1 réponse
KX
Messages postés
16668
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2023
3 005
30 juil. 2017 à 02:15
30 juil. 2017 à 02:15
Bonjour,
Par "bouger" l'image tu veux dire quoi ? Déplacer une image fixe sur ta fenêtre ou afficher une image dynamique (genre un Gif).
Sachant que dans les deux cas, n'importe quel composant Swing peut le faire via la méthode paint(Graphics)
Par "bouger" l'image tu veux dire quoi ? Déplacer une image fixe sur ta fenêtre ou afficher une image dynamique (genre un Gif).
Sachant que dans les deux cas, n'importe quel composant Swing peut le faire via la méthode paint(Graphics)
12 août 2017 à 15:11
12 août 2017 à 16:46
C'est assez générique car on pourrait s'en servir pour déplacer n'importe quoi.
import java.awt.Component; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; public class DraggableMouseAdapter extends MouseAdapter { private final Component component; private int dx, dy; public DraggableMouseAdapter(Component component) { this.component = component; } @Override public void mousePressed(MouseEvent e) { dx = component.getX() - e.getXOnScreen(); dy = component.getY() - e.getYOnScreen(); } @Override public void mouseDragged(MouseEvent e) { component.setLocation(dx + e.getXOnScreen(), dy + e.getYOnScreen()); } public static void init(Component component) { DraggableMouseAdapter adapter = new DraggableMouseAdapter(component); component.addMouseListener(adapter); component.addMouseMotionListener(adapter); } }import java.awt.Component; import java.awt.Dimension; import java.awt.Graphics; import java.awt.Image; public class ImageComponent extends Component { private static final long serialVersionUID = 1; private final Image img; public ImageComponent(Image img) { this.img = img; setSize(getSize()); } @Override public void paint(Graphics g) { g.drawImage(img, 0, 0, null); } @Override public Dimension getSize() { return new Dimension(img.getWidth(null), img.getHeight(null)); } }import java.awt.Image; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; import javax.swing.JFrame; public class Test { public static void main(String[] args) throws IOException { Image img = ImageIO.read(new File("C:/image.png")); ImageComponent imgComp = new ImageComponent(img); DraggableMouseAdapter.init(imgComp); JFrame frame = new JFrame(); frame.setLayout(null); frame.setSize(800, 600); frame.add(imgComp); frame.setVisible(true); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } }