This commit is contained in:
2023-10-23 13:23:36 +02:00
parent 667dae6f1a
commit 322b22f9bf
5711 changed files with 72953 additions and 0 deletions

View File

@@ -0,0 +1,99 @@
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ActionGroupe implements MouseListener,KeyListener{
public JLabel[] listeMusique;
public boolean[] selection;
public boolean isCtrlPressed;
public ActionGroupe(JLabel[] listeMusique){
this.listeMusique = listeMusique;
this.selection = new boolean[this.listeMusique.length];
this.isCtrlPressed = false;
this.selectionFalse();
for (JLabel musique : this.listeMusique){
musique.setOpaque(true);
}
}
private void selectionFalse(){
for (int i=0; i<this.selection.length; i++){
this.selection[i] = false;
this.listeMusique[i].setBackground(new Color(255,255,255));
}
}
private boolean isSelected(JLabel musique){
for (int i=0; i<listeMusique.length; i++){
if (this.listeMusique[i] == musique){
if (selection[i] == true){
return true;
}
return false;
}
}
return false;
}
private int indiceMusique(JLabel musique){
for (int i=0; i<listeMusique.length; i++){
if (this.listeMusique[i] == musique){
return i;
}
}
return -1;
}
@Override
public void mouseClicked(MouseEvent e){
JLabel musiqueSelection = (JLabel) e.getComponent();
int indiceMusiqueSelection = this.indiceMusique(musiqueSelection);
if (this.isCtrlPressed==false){
this.selectionFalse();
System.out.println(this.selection);
}
this.selection[indiceMusiqueSelection] = true;
musiqueSelection.setBackground(new Color(100,255,0));
}
@Override
public void mouseEntered(MouseEvent e){
JLabel musiqueSelection = (JLabel) e.getComponent();
if (this.isSelected(musiqueSelection)==false){
musiqueSelection.setBackground(new Color(100,100,100));
}
}
@Override
public void mouseExited(MouseEvent e){
JLabel musiqueSelection = (JLabel) e.getComponent();
if (this.isSelected(musiqueSelection)==false){
musiqueSelection.setBackground(new Color(255,255,255));
}
}
@Override
public void mousePressed(MouseEvent e){
}
@Override
public void mouseReleased(MouseEvent e){
}
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
int touche = e.getKeyCode();
if (touche == 17){
this.isCtrlPressed = true;
}
}
@Override
public void keyReleased(KeyEvent e) {
int touche = e.getKeyCode();
if (touche == 17){
this.isCtrlPressed = false;
}
}
}

View File

@@ -0,0 +1,99 @@
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ActionGroupe implements MouseListener,KeyListener{
public JLabel[] listeMusique;
public boolean[] selection;
public boolean isCtrlPressed;
public ActionGroupe(JLabel[] listeMusique){
this.listeMusique = listeMusique;
this.selection = new boolean[this.listeMusique.length];
this.isCtrlPressed = false;
this.selectionFalse();
for (JLabel musique : this.listeMusique){
musique.setOpaque(true);
}
}
private void selectionFalse(){
for (int i=0; i<this.selection; i++){
this.selection[i] = false;
this.listeMusique[i].setBackground(new Color(255,255,255));
}
}
private boolean isSelected(JLabel musique){
for (int i=0; i<listeMusique.length; i++){
if (this.listeMusique[i] == musique){
if (selection[i] == true){
return true;
}
return false;
}
}
return false;
}
private int indiceMusique(JLabel musique){
for (int i=0; i<listeMusique.length; i++){
if (this.listeMusique[i] == musique){
return i;
}
}
return -1;
}
@Override
public void mouseClicked(MouseEvent e){
JLabel musiqueSelection = (JLabel) e.getComponent();
int indiceMusiqueSelection = this.indiceMusique(musiqueSelection);
if (this.isCtrlPressed==false){
this.selectionFalse();
System.out.println(this.selection);
}
this.selection[indiceMusiqueSelection] = true;
musiqueSelection.setBackground(new Color(100,255,0));
}
@Override
public void mouseEntered(MouseEvent e){
JLabel musiqueSelection = (JLabel) e.getComponent();
if (this.isSelected(musiqueSelection)==false){
musiqueSelection.setBackground(new Color(100,100,100));
}
}
@Override
public void mouseExited(MouseEvent e){
JLabel musiqueSelection = (JLabel) e.getComponent();
if (this.isSelected(musiqueSelection)==false){
musiqueSelection.setBackground(new Color(255,255,255));
}
}
@Override
public void mousePressed(MouseEvent e){
}
@Override
public void mouseReleased(MouseEvent e){
}
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyPressed(KeyEvent e) {
int touche = e.getKeyCode();
if (touche == 17){
this.isCtrlPressed = true;
}
}
@Override
public void keyReleased(KeyEvent e) {
int touche = e.getKeyCode();
if (touche == 17){
this.isCtrlPressed = false;
}
}
}

View File

@@ -0,0 +1,36 @@
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Playlist{
public static void main(String args[]){
JFrame fenetre = new JFrame();
fenetre.setSize(800, 800);
fenetre.setLocation(100, 100);
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel[] listeMusique = {
new JLabel("Speak To Me / Breathe",JLabel.CENTER),
new JLabel("On The Run",JLabel.CENTER),
new JLabel("Time",JLabel.CENTER),
new JLabel("The Great Gig In The Sky",JLabel.CENTER),
new JLabel("Money",JLabel.CENTER),
new JLabel("Us And Them",JLabel.CENTER),
new JLabel("Any Colour You Like",JLabel.CENTER),
new JLabel("Brain Damage",JLabel.CENTER),
new JLabel("Eclipse",JLabel.CENTER),
};
ActionGroupe musiqueObserveur = new ActionGroupe(listeMusique);
GridLayout playlistGrid = new GridLayout(listeMusique.length, 1);
fenetre.setLayout(playlistGrid);
for (JLabel musique : listeMusique){
fenetre.add(musique);
musique.addMouseListener(musiqueObserveur);
}
fenetre.setVisible(true);
}
}

Binary file not shown.

View File

@@ -0,0 +1,37 @@
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Q4Main{
public static void main(String args[]){
JFrame fenetre = new JFrame();
fenetre.setSize(800, 800);
fenetre.setLocation(100, 100);
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel[] listeMusique = {
new JLabel("Speak To Me / Breathe",JLabel.CENTER),
new JLabel("On The Run",JLabel.CENTER),
new JLabel("Time",JLabel.CENTER),
new JLabel("The Great Gig In The Sky",JLabel.CENTER),
new JLabel("Money",JLabel.CENTER),
new JLabel("Us And Them",JLabel.CENTER),
new JLabel("Any Colour You Like",JLabel.CENTER),
new JLabel("Brain Damage",JLabel.CENTER),
new JLabel("Eclipse",JLabel.CENTER),
};
ActionGroupe musiqueObserveur = new ActionGroupe(listeMusique);
GridLayout playlistGrid = new GridLayout(listeMusique.length, 1);
fenetre.setLayout(playlistGrid);
for (JLabel musique : listeMusique){
fenetre.add(musique);
musique.addMouseListener(musiqueObserveur);
}
fenetre.addKeyListener(musiqueObserveur);
fenetre.setVisible(true);
}
}