亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? bridgecanvas.java

?? 演示win32的socket 通訊 八皇后的改進算法 并發Concurrency的JAVA實現 applet演示鼠標的點擊時間和顯示圖象 手機J2ME的多線程演示
?? JAVA
字號:
package concurrency.bridge;

import java.awt.*;
import java.applet.*;

class BridgeCanvas extends Canvas {

    SingleLaneBridge controller;

    Image  redCar;
    Image  blueCar;
    Image  bridge;

    AudioClip crashSound;

    int[] redX,redY,blueX,blueY;

    int maxCar = 2;

    final static int initredX  = 5;
    final static int initredY  = 55;
    final static int initblueX = 410;
    final static int initblueY = 130;
    final static int bridgeY   = 90;

    boolean frozen = false;
    int cycleTime = 20;

    BridgeCanvas(SingleLaneBridge controller) {
        super();
        this.controller = controller;

        crashSound=controller.getAudioClip(controller.getDocumentBase(),"sound/crash.au");

        MediaTracker mt;
        mt = new MediaTracker(this);

        redCar = controller.getImage(controller.getDocumentBase(), "image/redcar.gif");
        mt.addImage(redCar, 0);
        blueCar = controller.getImage(controller.getDocumentBase(), "image/bluecar.gif");
        mt.addImage(blueCar, 1);
        bridge = controller.getImage(controller.getDocumentBase(), "image/bridge.gif");
        mt.addImage(bridge, 2);

        try {
            mt.waitForID(0);
            mt.waitForID(1);
            mt.waitForID(2);
        } catch (java.lang.InterruptedException e) {
            System.out.println("Couldn't load one of the images");
        }
        setSize(bridge.getWidth(null),bridge.getHeight(null));
        init(1);
    }

    public void init(int ncars) { //set number of cars
        maxCar = ncars;
        frozen = false;
        redX  = new int[maxCar];
        redY  = new int[maxCar];
        blueX = new int[maxCar];
        blueY = new int[maxCar];

        for (int i = 0; i<maxCar ; i++) {
            redX[i] = initredX - i*85;
            redY[i] = initredY;
            blueX[i] =initblueX + i*85;
            blueY[i] =initblueY;
        }
        repaint();
    }

    Image offscreen;
    Dimension offscreensize;
    Graphics offgraphics;

    public void backdrop() {
        Dimension d = size();
	    if ((offscreen == null) || (d.width != offscreensize.width)
	                            || (d.height != offscreensize.height)) {
	        offscreen = createImage(d.width, d.height);
	        offscreensize = d;
	        offgraphics = offscreen.getGraphics();
	        offgraphics.setFont(new Font("Helvetica",Font.BOLD,36));
	    }
        offgraphics.setColor(Color.lightGray);
        offgraphics.drawImage(bridge,0,0,this);
    }

    public void paint(Graphics g) {
         update(g);
    }

    public void update(Graphics g) {
        backdrop();
        for (int i=0; i<maxCar; i++) {
            offgraphics.drawImage(redCar,redX[i],redY[i],this);
            offgraphics.drawImage(blueCar,blueX[i],blueY[i],this);
        }
        if (blueY[0]==redY[0] && Math.abs(redX[0]+80 - blueX[0])<5) {
            offgraphics.setColor(Color.red);
            offgraphics.drawString("Crunch!",200,100);
            frozen=true;
            crashSound.play();
        }
        g.drawImage(offscreen, 0, 0, null);
    }

    //returns true for the period from just before until just after car on bridge
    public  boolean moveRed(int i) throws InterruptedException{
        int X = redX[i];
        int Y = redY[i];
        synchronized (this) {
            while (frozen ) wait();
            if (i==0 || Math.abs(redX[i-1] - X) > 120) {
                X += 2;
                if (X >=500) { X = -80; Y = initredY;}
                if (X >=60 && X < 290 && Y<bridgeY) ++Y;
                if (X >=290 && Y>initredY) --Y;
            }
            redX[i]=X;
            redY[i]=Y;
            repaint();
        }
        try{Thread.sleep(cycleTime);} catch(InterruptedException e) {}
        return (X>25 && X<400);
     }

    //returns true for the period from just before until just after car on bridge
    public  boolean moveBlue(int i) throws InterruptedException{
        int X = blueX[i];
        int Y = blueY[i];
        synchronized (this) {
            while (frozen ) wait();
            if (i==0 || Math.abs(blueX[i-1] - X) > 120) {
                X -= 2;
                if (X <=-80) { X = 500; Y = initblueY;}
                if (X <=370 && X > 130 && Y>bridgeY) --Y;
                if (X <=130 && Y<initblueY) ++Y;
                blueX[i]=X;
            }
            blueY[i]=Y;
            repaint();
        }
        try{Thread.sleep(cycleTime);} catch(InterruptedException e) {}
        repaint();
        return (X>25 && X<400);
    }


    public synchronized void freeze(){
        frozen = true;
    }

    public synchronized void thaw() {
        frozen = false;
        notifyAll();
    }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲午夜高清国产拍精品| 欧美日韩国产乱码电影| 日韩国产精品久久久久久亚洲| 亚洲精品中文在线影院| 中文字幕亚洲视频| 亚洲免费资源在线播放| 午夜伦欧美伦电影理论片| 视频一区国产视频| 久久精品99国产精品日本| 国产一区欧美日韩| 成人中文字幕电影| 99久久国产免费看| 91福利资源站| 日韩欧美电影一区| 久久久av毛片精品| 亚洲欧美日韩人成在线播放| 亚洲国产精品影院| 免费一级片91| 日本韩国欧美一区| 91麻豆精品91久久久久同性| 日韩欧美你懂的| 国产精品丝袜久久久久久app| 日韩理论片中文av| 日韩1区2区日韩1区2区| 国产成人精品亚洲777人妖| www.欧美亚洲| 欧美人牲a欧美精品| 2023国产精品自拍| 亚洲女厕所小便bbb| 蜜桃av噜噜一区二区三区小说| 国产在线精品免费| 欧美中文字幕一区二区三区亚洲 | 欧美福利电影网| 日韩免费视频线观看| 国产精品午夜电影| 婷婷久久综合九色综合绿巨人| 极品少妇一区二区三区精品视频| hitomi一区二区三区精品| 日韩一区二区在线看| 日韩美女精品在线| 韩国v欧美v日本v亚洲v| 欧美怡红院视频| 国产人妖乱国产精品人妖| 亚洲午夜久久久| k8久久久一区二区三区| 精品欧美乱码久久久久久 | 亚洲国产精品久久人人爱| 黄色成人免费在线| 在线精品视频免费观看| 国产欧美日韩在线看| 日本欧美一区二区在线观看| 99国产精品久久久久久久久久 | 亚洲电影一区二区三区| 从欧美一区二区三区| 日韩一级免费一区| 亚洲mv大片欧洲mv大片精品| 成人a级免费电影| 精品第一国产综合精品aⅴ| 天天爽夜夜爽夜夜爽精品视频| 成人黄色在线看| 久久久久综合网| 久久国产精品第一页| 欧美精品视频www在线观看| 亚洲美女电影在线| 91视频在线观看| 国产精品国产三级国产a| 国产成人精品午夜视频免费| 欧美大片一区二区三区| 男女性色大片免费观看一区二区| 91成人看片片| 亚洲资源在线观看| 在线观看网站黄不卡| 夜色激情一区二区| 欧美性生活一区| 亚洲成a人v欧美综合天堂| 欧美群妇大交群的观看方式| 亚洲黄色av一区| 欧美在线观看视频在线| 偷拍一区二区三区| 日韩欧美一区二区三区在线| 青草av.久久免费一区| 日韩一区二区视频在线观看| 久久精品99国产国产精| 欧美精品一区男女天堂| 国产福利91精品一区二区三区| 欧美v亚洲v综合ⅴ国产v| 激情文学综合网| 国产欧美日本一区视频| zzijzzij亚洲日本少妇熟睡| 中文字幕亚洲成人| 欧美性色aⅴ视频一区日韩精品| 亚洲第一电影网| 久久久久久综合| 99久久精品99国产精品| 婷婷综合五月天| www成人在线观看| 99久久99精品久久久久久| 一区二区三区 在线观看视频| 欧美日本在线播放| 国产一区二区三区久久悠悠色av| 国产精品美女一区二区三区| 91成人免费在线| 精品一区二区影视| 亚洲青青青在线视频| 欧美日韩精品综合在线| 激情综合网av| 亚洲激情第一区| 精品91自产拍在线观看一区| 成人国产精品视频| 日本亚洲视频在线| 国产精品无人区| 91精品综合久久久久久| 成人免费视频播放| 视频一区在线播放| 中文字幕在线免费不卡| 日韩欧美在线影院| 色一情一伦一子一伦一区| 精品制服美女久久| 亚洲一区在线视频观看| 国产欧美日韩中文久久| 6080日韩午夜伦伦午夜伦| a亚洲天堂av| 韩国毛片一区二区三区| 丝袜美腿亚洲一区| 国产精品久久久久久久久图文区 | 美腿丝袜亚洲色图| 亚洲黄一区二区三区| 国产日韩欧美激情| 欧美电影免费观看高清完整版在线| 99久久99久久精品免费观看| 国产一区二区在线影院| 秋霞国产午夜精品免费视频| 一片黄亚洲嫩模| 日韩毛片高清在线播放| 国产精品午夜在线| 久久九九全国免费| 久久亚洲免费视频| 日韩视频一区二区在线观看| 欧美性受xxxx| 在线精品国精品国产尤物884a| 成人av电影免费在线播放| 精品中文字幕一区二区| 久久黄色级2电影| 久久精品国产**网站演员| 日本美女视频一区二区| 天天操天天干天天综合网| 亚洲一区二区三区三| 亚洲国产欧美在线| 亚洲午夜一区二区| 亚洲成人黄色影院| 视频一区在线播放| 蜜桃传媒麻豆第一区在线观看| 日韩高清中文字幕一区| 丝袜美腿高跟呻吟高潮一区| 日日欢夜夜爽一区| 免费精品视频最新在线| 久久激五月天综合精品| 激情文学综合网| 成人免费视频一区二区| 色妞www精品视频| 欧美亚洲另类激情小说| 欧美嫩在线观看| 日韩欧美中文字幕制服| 久久蜜桃av一区二区天堂| 国产精品久久看| 亚洲一二三级电影| 日韩黄色在线观看| 经典三级视频一区| 高清不卡在线观看| 91在线小视频| 欧美日韩国产综合一区二区| 久久人人超碰精品| 国产精品热久久久久夜色精品三区| |精品福利一区二区三区| 水蜜桃久久夜色精品一区的特点| 日本大胆欧美人术艺术动态| 国产一区视频导航| 日本韩国欧美三级| 精品日本一线二线三线不卡| 中文一区二区完整视频在线观看| 国产精品日日摸夜夜摸av| 亚洲国产日日夜夜| 精品一区二区在线看| 91麻豆免费看片| 欧美成人精品高清在线播放| 国产精品午夜免费| 日本网站在线观看一区二区三区 | 精品国产电影一区二区 | 92精品国产成人观看免费| 69成人精品免费视频| 中文欧美字幕免费| 日本大胆欧美人术艺术动态| 国产99久久久国产精品潘金| 欧美日韩国产精品自在自线| 国产日韩欧美不卡在线| 日本三级亚洲精品| 色老汉一区二区三区| 久久精品亚洲乱码伦伦中文| 日韩制服丝袜av| 成人avav影音|