ich habe ein problem mit dem spiel simon(says) , weil ich nicht weiß wie ich abfragen soll welche buttons geklickt werden .
Weiß jemand wie man eine Funktion macht die zurückgiebt welche buttons geklickt wurden ?
hier ist mein gesamter code bis jetzt:
Weiß jemand wie man eine Funktion macht die zurückgiebt welche buttons geklickt wurden ?
hier ist mein gesamter code bis jetzt:
Java:
package test;
import javax.swing.*;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.event.*;
import java.util.ArrayList;
import java.util.Random;
import java.util.concurrent.TimeUnit;
//import java.io.*;
//import javax.imageio.*;
public class frame2 {
public static void main(String[] args) throws InterruptedException {
JFrame f = new JFrame("hii");
JPanel panel = new JPanel();
JButton button = new JButton("Start");
JButton button1 = new JButton("");
JButton button2 = new JButton("");
JButton button3 = new JButton("");
JButton button4 = new JButton("");
JLabel label = new JLabel("Willkommen zu Simon :");
panel.add(button);
panel.add(button1);
panel.add(button2);
panel.add(button3);
panel.add(button4);
panel.add(label);
f.add(panel);
f.pack();
f.setResizable(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(830, 830);
f.setVisible(true);
panel.setLayout(null);
button.setBounds(230,300,350,100);
button.setBackground(Color.cyan);
button.setFont(new Font("Arial", Font.PLAIN, 50));
button.setForeground(Color.BLUE);
label.setForeground(Color.cyan);
label.setFont(new Font("Arial",Font.PLAIN,60));
label.setBounds(100,100,800,200);
button1.setBackground(Color.GREEN.darker());
button1.setBounds(100,100,300,300);//buttons am fenster einrichten:
button1.setVisible(false);
button2.setBackground(Color.blue.darker());
button2.setBounds(400,100,300,300);
button2.setVisible(false);
button3.setBackground(Color.red.darker());
button3.setBounds(100,400,300,300);
button3.setVisible(false);
button4.setBackground(Color.yellow.darker());
button4.setBounds(400,400,300,300);
button4.setVisible(false);
panel.setBackground(Color.black.darker());
/*try {
f.setContentPane(new JLabel(new ImageIcon(ImageIO.read(new File("C:\\Users\\User\\Documents\\Programmieren\\Java\\Projekte\\test\\Bäume2.jpg")))));
}catch (IOException e) {
System.out.println("keider nein");
}*/
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//myFrame.setSize(100, 100);
button.setVisible(false);
button1.setVisible(true);
button2.setVisible(true);
button3.setVisible(true);
button4.setVisible(true);
panel.setBackground(Color.cyan);
label.setVisible(false);
/*
new javax.swing.Timer(500, new ActionListener() {
private final Color color1 = Color.GREEN;
private final Color color2 = Color.GREEN.darker();
public void actionPerformed(ActionEvent e) {
if (color1 == button1.getBackground()) {
button1.setBackground(color2);
} else {
button1.setBackground(color1);
}
}
}).start();
*/
boolean creatingPattern = false;
if (!creatingPattern) {
button1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
button1.setBackground(Color.GREEN);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
button1.setBackground(Color.GREEN.darker());
}
});
button2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
button2.setBackground(Color.blue.brighter());
}
public void mouseExited(java.awt.event.MouseEvent evt) {
button2.setBackground(Color.blue.darker());
}
});
button3.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
button3.setBackground(Color.red);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
button3.setBackground(Color.red.darker());
}
});
button4.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
button4.setBackground(Color.yellow);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
button4.setBackground(Color.yellow.darker());
}
});
}
/*if(x==3){
try{
Thread.sleep(5000);
}
catch(Exception w){}
for(int i = 0 ;i<10;i++) {
button.setBackground(Color.GREEN);
label.setText("grün");
//System.out.println("grün");
try{
Thread.sleep(5000);
}
catch(Exception w){}
button.setBackground(Color.GREEN.darker());
System.out.println("grün dunkel");
}
} */
}
} );
int grün=1 ;
int blau=2;
int rot=3;
int gelb=4;
int[]array = new int[10];
for (int j =0;j<10;j++) {
for (int i = 1;i<=j;i++) {
int random = new Random().nextInt(4)+1;
if (random==grün) {
button1.setBackground(Color.GREEN.brighter());
TimeUnit.MILLISECONDS.sleep(500);
button1.setBackground(Color.green.darker());
}
else if (random==blau){
button2.setBackground(Color.BLUE.brighter());
TimeUnit.MILLISECONDS.sleep(500);
button2.setBackground(Color.BLUE.darker());
}
else if (random==rot) {
button3.setBackground(Color.RED.brighter());
TimeUnit.MILLISECONDS.sleep(500);
button3.setBackground(Color.RED.darker());
}
else if (random==gelb) {
button4.setBackground(Color.yellow.brighter());
TimeUnit.MILLISECONDS.sleep(500);
button4.setBackground(Color.YELLOW.darker());
}
array[i]=random;
//System.out.println(random);
}
TimeUnit.MILLISECONDS.sleep(2000);
}
}
Zuletzt bearbeitet von einem Moderator: