import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class openlight extends Applet implements MouseListener
{
final int BlockSize = 30; // 棋盘格大小
int size = 5; // 棋盘大小
int OpenNum; // 统计打开灯的数量
private byte[][] chess = new byte[size][size]; // 存放灯开关状态
public void ClearGame() // 初始化数据,把灯全灭掉
{
for(int i=0; i
public void init()
{
addMouseListener(this); // 增加鼠标监听
ClearGame();
}
public void paint(Graphics g) // 绘制棋盘及说明
{
g.clearRect(0,0,getSize().width,getSize().height); // 先清除画面
g.setColor(Color.black);
for(int i=0; i
public void update(Graphics g)
{
paint(g);
}
public void stop()
{
removeMouseListener(this);
} // 去掉鼠标监听
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e) // 处理鼠标按下事件
{
int x = e.getX();
int y = e.getY();
if(x>0 && x0 && y=0) // 处理 (x,y-1)的状态
if(chess[dx][dy-1]==1)
chess[dx][dy-1]=0;
else
chess[dx][dy-1]=1;
if(dx-1>=0) // 处理 (x-1,y)的状态
if(chess[dx-1][dy]==1)
chess[dx-1][dy]=0;
else
chess[dx-1][dy]=1;
if(chess[dx][dy]==1)
chess[dx][dy]=0; // 处理(x,y)的状态
else
chess[dx][dy]=1;
if(dx+1BlockSize * size +10 && x0 && y
import java.awt.event.*;
import java.applet.*;
public class openlight extends Applet implements MouseListener
{
final int BlockSize = 30; // 棋盘格大小
int size = 5; // 棋盘大小
int OpenNum; // 统计打开灯的数量
private byte[][] chess = new byte[size][size]; // 存放灯开关状态
public void ClearGame() // 初始化数据,把灯全灭掉
{
for(int i=0; i
public void init()
{
addMouseListener(this); // 增加鼠标监听
ClearGame();
}
public void paint(Graphics g) // 绘制棋盘及说明
{
g.clearRect(0,0,getSize().width,getSize().height); // 先清除画面
g.setColor(Color.black);
for(int i=0; i
public void update(Graphics g)
{
paint(g);
}
public void stop()
{
removeMouseListener(this);
} // 去掉鼠标监听
public void mouseEntered(MouseEvent e){}
public void mouseExited(MouseEvent e){}
public void mouseReleased(MouseEvent e){}
public void mouseClicked(MouseEvent e){}
public void mousePressed(MouseEvent e) // 处理鼠标按下事件
{
int x = e.getX();
int y = e.getY();
if(x>0 && x0 && y=0) // 处理 (x,y-1)的状态
if(chess[dx][dy-1]==1)
chess[dx][dy-1]=0;
else
chess[dx][dy-1]=1;
if(dx-1>=0) // 处理 (x-1,y)的状态
if(chess[dx-1][dy]==1)
chess[dx-1][dy]=0;
else
chess[dx-1][dy]=1;
if(chess[dx][dy]==1)
chess[dx][dy]=0; // 处理(x,y)的状态
else
chess[dx][dy]=1;
if(dx+1BlockSize * size +10 && x0 && y
转载于:https://blog.51cto.com/lovesunny/96544