Ben juste une tite source pour montrer comment utiliser un timer pour deplacer une fenetre
Source / Exemple :
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class MoveWin extends JWindow implements ActionListener
{
private Timer timer;
private int x,y,currx,curry;
private JLabel lab;
public MoveWin()
{
// On recupere la taille de l ecran
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
// On donne une taille a notre fenetre
setSize(100,50);
// On definit le point d arrivée
y = screenSize.height-100;
// On definit le point de départ
curry = screenSize.height;
currx = screenSize.width - 105;
// On y place notre fenetre
setLocation(currx,screenSize.height);
// timer avec un delai de 10 millisecondes
timer = new Timer(10,this);
// depart du timer
timer.start();
// label que l on va afficher
lab = new JLabel();
lab.setText("<html><font color=red size=4>coucou</font></html>");
// Affichage de la fenetre
setVisible(true);
// Panel avec une bordure en relief
JPanel pan = new JPanel();
pan.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createRaisedBevelBorder(), BorderFactory.createLoweredBevelBorder()));
// Ajout des composants
getContentPane().add(pan);
pan.add(lab);
}
/**
- Méthode qui va gérer les événements du timer
- /
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == timer)
{
// On définit un pas
int step = 1;
// Si on a pas atteint le point d arrivé
if (curry != y)
{
// On modifie le point courant et on y place notre fenetre
curry -= step;
setLocation(currx,curry);
}
else
timer.stop(); // sinon on arrete le timer
}
}
public static void main(String[] args)
{
MoveWin fen = new MoveWin();
}
}
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.