import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
class game0511 extends Frame implements Runnable,MouseListener{
PixelGrabber pg;
Color col;
Image img;
int w=250;
int h=373;
int red,green,blue;
int pix[]=new int[w*h];
int memor[][]=new int[h][w];
int memog[][]=new int[h][w];
int memob[][]=new int[h][w];
int mx,nx,m,n;
int ex,ey;
int ex1,ey1,ex2,ey2,ex3,ey3,ex4,ey4;
int mode;
String s1,s2,s3,s4;
game0511(){
addMouseListener(this);
s1="img2.jpg";
catchimg(s1);
Thread th=new Thread(this);
th.start();
}
public void run(){
int t;
t=1;
mode=1;
while(t<10){
repaint();
try{
Thread.sleep(2000);
}catch(InterruptedException e){}
t=t+1;
}
ex1=ex;
ey1=ey;
t=1;
mode=2;
while(t<10){
repaint();
try{
Thread.sleep(2000);
}catch(InterruptedException e){}
t=t+1;
}
ex2=ex;
ey2=ey;
repaint();
mode=3;
t=1;
while(t<10){
repaint();
try{
Thread.sleep(2000);
}catch(InterruptedException e){}
t=t+1;
}
ex3=ex;
ey3=ey;
repaint();
mode=4;
t=1;
while(t<10){
repaint();
try{
Thread.sleep(2000);
}catch(InterruptedException e){}
t=t+1;
}
ex4=ex;
ey4=ey;
repaint();
}
public static void main(String[] args) {
game0511 f = new game0511();
f.setSize(700,700);
f.setBackground(Color.blue) ;
f.setVisible(true);
f.addWindowListener(new WindowAdapter(){public void
windowClosing(WindowEvent e){System.exit(0);}});
}
public void paint( Graphics g ) {
g.setColor(Color.blue);
g.fillRect(0,0,700,700);
if(mode==1)g.drawString("mode 1",100,600);
if(mode==2)g.drawString("mode 2",100,600);
if(mode==3)g.drawString("mode 3",100,600);
if(mode==4)g.drawString("mode 4",100,600);
mx=1;
nx=1;
for (mx=0;mx<h;mx++){
for (nx=0;nx<w;nx++){
g.setColor(new Color(memor[mx][nx],memog[mx][nx],memob[mx][nx]));
g.fillRect(100+nx,100+mx,1,1);
}
}
g.setColor(Color.red);
g.fillRect(ex,ey,5,5);
g.setColor(Color.red);
if(mode==1)g.drawString("mode 1",100,600);
if(mode==2)g.drawString("mode 2",100,600);
if(mode==3)g.drawString("mode 3",100,600);
if(mode==4)g.drawString("mode 4",100,600);
}
void catchimg(String s){
img = createImage(w,h);
img = Toolkit.getDefaultToolkit().getImage(s);
pg = new PixelGrabber(img,0,0,w,h,pix,0,w);
try{pg.grabPixels();}catch(InterruptedException ie){}
m=0;
n=0;
for(int i=0;i<w*h;i++){
int p = pix[i];
col=new Color(pix[i]);
red=col.getRed();
green=col.getGreen();
blue=col.getBlue();
memor[m][n]=red;
memog[m][n]=green;
memob[m][n]=blue;
n=n+1;
if (n==w)m=m+1;
if (n==w)n=0;
}
}
public void mouseEntered(MouseEvent e){
}
public void mouseExited(MouseEvent e){
}
public void mousePressed(MouseEvent e){
}
public void mouseReleased(MouseEvent e){
}
public void mouseClicked(MouseEvent e){
double mex,mey;
mey=e.getY() ;
mex=e.getX();
ex=(int)mex;
ey=(int)mey;
}
}
最終更新:2011年02月24日 05:52