?? serialimage2.java
字號(hào):
import java.awt.*;
import java.applet.*;
public class SerialImage2 extends Applet implements Runnable
{
int SPF;//動(dòng)畫(huà)播放發(fā)幀數(shù)的倒數(shù)
int sx,sy; //圖象來(lái)源區(qū)域
Image animation;
MediaTracker mt ;
Thread newThread;
Image offScreen;//次畫(huà)面
Graphics drawOffScreen;//繪制次畫(huà)面的Graphics
public void init()
{
SPF = 100;
mt = new MediaTracker(this);
animation = getImage(getDocumentBase(), "images/cg0432.gif");
mt.addImage(animation, 0);
try
{
showStatus("圖象加載中...");
mt.waitForAll();
}
catch (InterruptedException e) {}
offScreen = createImage(250, 250);//建立次畫(huà)面
drawOffScreen = offScreen.getGraphics();
}
public void start()
{
//建立并啟動(dòng)新線程
newThread = new Thread(this);
newThread.start();
}
public void stop()
{
newThread = null;
}
public void paint(Graphics g)
{
//下面清除次畫(huà)面
drawOffScreen.clearRect(0, 0, 250, 250);
//在次畫(huà)面繪制圖象
drawOffScreen.drawImage(animation, 0, 0, 250, 250,
sx, sy, sx + 250, sy + 250,this);
g.drawImage(offScreen, 0, 0, 250, 250, this);
}
public void update(Graphics g)
{
paint(g);
}
public void run()
{
while (newThread != null)
{
repaint();
try
{
Thread.sleep(SPF);
//計(jì)算來(lái)源區(qū)域
//下面是原始的,因?yàn)閳D片有更改,所以自己寫(xiě)一段
// sx += 128;
// if (sx == 640)
// {
// sy += 96;
// sx = 0;
// if (sy == 480)
// sy = 0;
// }
sx += 250;
if (sx == 1750)
sx = 0;
}
catch (InterruptedException e) {}
}
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -