⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ch15l02.txt

📁 《Web编程专家指南》
💻 TXT
字号:
Listing 15.2 The SpinText implementation.import java.awt.*;public class SpinText implements Runnable{    Thread myThread;    String msg;    String outStr;    char spinChar;    int cols;    int inSpin;    long sleepDelay;    Graphics g;    boolean inBlock;    boolean charInSpin[];    char displayLine[];    public SpinText() {    }    public SpinText(String m, Long sleepDIn, Graphics gIn) {        g = gIn;        sleepDelay = sleepDIn.longValue();        cols = m.length();        msg = m;        displayLine = new char[msg.length()];        spinChar = ' ';        charInSpin = new boolean[cols];        for(int i = 0; i < cols; i++){            charInSpin[i] = true;            displayLine[i] = spinChar;        }        inSpin = cols;        inBlock = true;        }    public void run(){        inSpin = cols;        spinChar = ' ';        g.setFont(new Font("Courier", Font.PLAIN, 12));        while(inSpin > 0){            int i;            for(i = 0; i < cols; i++){                if(charInSpin[i] == true){                    displayLine[i] = spinChar;                    if(msg.charAt(i) == spinChar){                        charInSpin[i] = false;                        inSpin--;                    }                }            }            outStr = new String(displayLine);            this.paint(g);            switch(spinChar){            case(' ') :                spinChar = 'a';  //start with the lower-case letters                break;            case('z') :                spinChar = '.';  //roll over to punctuation -- note that I                                 //skip exclamation pt., quote marks, and                                 //some others                break;            default:                spinChar++;            }            try{                Thread.sleep(sleepDelay);            }catch (Exception e){                return;            }        }        inBlock = false;    }    public void paint(Graphics g){            g.clearRect(0, 0, 300, 300);            g.drawString(outStr, 100, 100);    }    public boolean inBlock(){        return inBlock;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -