开窗户小游戏

package GUI;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
public class OpenWindow extends JFrame implements ActionListener{
    private JLabel label=new JLabel("开窗户游戏");
    private JButton button[]=new JButton[25];
    private JPanel top=new JPanel();
    private JPanel bottom=new JPanel();
    private final int width=400;
    private final int height=400;
    private JButton reset=new JButton("重置");
    Color c;
public OpenWindow(){
top.setLayout(new GridLayout(5,5));
for(int i=0;i<button.length;i++){
button[i]=new JButton();
button[i].setBackground(Color.black);
button[i].addActionListener(this);
button[i].setActionCommand(String.valueOf(i));
c=button[i].getBackground();
top.add(button[i]);
}
this.add(top,BorderLayout.CENTER);
bottom.add(label);
bottom.add(reset);
reset.addActionListener(this);
this.add(bottom,BorderLayout.SOUTH);
this.setBounds(100, 100, width, height);
this.setTitle("开窗户游戏");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==reset){
for(int i=0;i<button.length;i++){
button[i].setBackground(Color.black);
}
}else{
int x=Integer.parseInt(e.getActionCommand());
selectIndex(x);
}
}

public void ChangeColor(JButton b){
if(b.getBackground()==c){
b.setBackground(Color.white);
}else{
b.setBackground(c);
}
}
public void selectIndex(int h){
if(h==0){
ChangeColor(button[h]);
ChangeColor(button[h+1]);
ChangeColor(button[h+5]);
}else if(h==4){
ChangeColor(button[h]);
ChangeColor(button[h-1]);
ChangeColor(button[h+5]);
}else if(h==20){
ChangeColor(button[h]);
ChangeColor(button[h+1]);
ChangeColor(button[h-5]);
}else if(h==24){
ChangeColor(button[h]);
ChangeColor(button[h-1]);
ChangeColor(button[h-5]);
}else if(1<=h&&h<=3){
ChangeColor(button[h]);
ChangeColor(button[h+1]);
ChangeColor(button[h-1]);
ChangeColor(button[h+5]);
}else if(21<=h&&h<=23){
ChangeColor(button[h]);
ChangeColor(button[h+1]);
ChangeColor(button[h-1]);
ChangeColor(button[h-5]);
}else if(h%5==0){
ChangeColor(button[h]);
ChangeColor(button[h+1]);
ChangeColor(button[h-5]);
ChangeColor(button[h+5]);
}else if(h%5==4){
ChangeColor(button[h]);
ChangeColor(button[h-1]);
ChangeColor(button[h-5]);
ChangeColor(button[h+5]);
}else{
ChangeColor(button[h]);
ChangeColor(button[h-1]);
ChangeColor(button[h-5]);
ChangeColor(button[h+5]);
ChangeColor(button[h+1]);
}

}
public void result(){
int count=0;
for(int i=0;i<button.length;i++){
if(button[i].getBackground()==c){
count++;
}
}
if(count==25){
JOptionPane.showMessageDialog(this, "恭喜你,你赢了!", "消息对话框", JOptionPane.INFORMATION_MESSAGE);
}
}
public static void main(String[] args) {
OpenWindow window=new OpenWindow();
}

}

你可能感兴趣的:(游戏,C++,c,swing,C#)