A voir également:
- Faire un saut en java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Comment supprimer une page sur word avec un saut de page ? - Guide
- Java décompiler - Télécharger - Langages
1 réponse
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
20 sept. 2012 à 18:56
20 sept. 2012 à 18:56
Voici un petit code qui fait simplement ce que tu veux :
Exemple d'utilisation :
public static void jump(JComponent container, Component component, double largeur, double hauteur, double precision, long latence) { Point init = component.getLocation(); for (double angle=0; angle<=Math.PI; angle+=Math.PI/precision) { Point before = component.getLocation(); component.setLocation(new Point( init.x+(int) (largeur*(1-Math.cos(angle))), init.y-(int) (hauteur*Math.sin(angle)))); Point after = component.getLocation(); container.paintImmediately( Math.min(before.x,after.x), Math.min(before.y,after.y), Math.abs(before.x-after.x)+component.getWidth(), Math.abs(before.y-after.y)+component.getHeight()); try { Thread.sleep(latence); } catch (InterruptedException e) {} } }
Exemple d'utilisation :
public static void main(String[] args) { final JButton button = new JButton(); button.setBounds(20,130,100,50); final JPanel panel = new JPanel(); panel.setLayout(null); panel.add(button); final JFrame frame = new JFrame(); frame.setSize(450, 250); frame.add(panel); button.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { jump(panel,button,150,100,1000,4); jump(panel,button,0,100,1000,4); jump(panel,button,-150,100,1000,4); } }); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); }
20 sept. 2012 à 19:29