fin
This commit is contained in:
69
DEV2.1/Evenement/Attente.java
Normal file
69
DEV2.1/Evenement/Attente.java
Normal file
@@ -0,0 +1,69 @@
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.event.*;
|
||||
|
||||
public class Attente extends JFrame {
|
||||
private JPanel panel;
|
||||
private boolean isInBackground = false;
|
||||
|
||||
public Attente() {
|
||||
setTitle("Attente");
|
||||
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
setSize(300, 300);
|
||||
setLocationRelativeTo(null);
|
||||
|
||||
// Création du panneau
|
||||
panel = new JPanel() {
|
||||
@Override
|
||||
protected void paintComponent(Graphics g) {
|
||||
super.paintComponent(g);
|
||||
if (isInBackground) {
|
||||
// Dessiner des triangles lorsque la fenêtre est en arrière-plan
|
||||
dessinerTriangles(g);
|
||||
} else {
|
||||
// Dessiner un disque magenta lorsque la fenêtre est en premier plan
|
||||
g.setColor(Color.MAGENTA);
|
||||
int diametre = Math.min(getWidth(), getHeight()) - 50;
|
||||
int x = (getWidth() - diametre) / 2;
|
||||
int y = (getHeight() - diametre) / 2;
|
||||
g.fillOval(x, y, diametre, diametre);
|
||||
}
|
||||
}
|
||||
};
|
||||
panel.setBackground(Color.GREEN); // Définir la couleur de fond du panneau
|
||||
|
||||
// Ajouter le panneau à la fenêtre
|
||||
add(panel);
|
||||
|
||||
// Ajouter un WindowListener pour détecter les événements de la fenêtre
|
||||
addWindowListener(new WindowAdapter() {
|
||||
@Override
|
||||
public void windowActivated(WindowEvent e) {
|
||||
isInBackground = false;
|
||||
panel.repaint(); // Redessiner le panneau lorsque la fenêtre revient au premier plan
|
||||
}
|
||||
|
||||
@Override
|
||||
public void windowDeactivated(WindowEvent e) {
|
||||
isInBackground = true;
|
||||
panel.repaint(); // Redessiner le panneau lorsque la fenêtre passe en arrière-plan
|
||||
}
|
||||
});
|
||||
|
||||
setVisible(true);
|
||||
}
|
||||
|
||||
// Méthode pour dessiner des triangles
|
||||
private void dessinerTriangles(Graphics g) {
|
||||
g.setColor(Color.BLACK);
|
||||
int[] x = null;
|
||||
x = new int[] {90,0,0,90};
|
||||
int[] y = null;
|
||||
y = new int[] {100,0,100,0};
|
||||
g.fillPolygon(x,y,4);
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
new Attente();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user