資源簡介
該程序利用線程實現動畫效果的一個案例,重點是多線程的睡眠方法,在線程的控制上也使用了線程的wait方法
代碼片段和文件信息
import?javax.swing.*;
import?java.awt.*;
import?java.awt.event.*;
public?class?Threadframe?extends?Jframe??implements?ActionListener
{
JPanel?panelpanelT;
int?score=0;
JLabel?label;
JButton?bstartbpausebresumebstop;
JTextField?textField;
JTextField?scoreField;
Wordthread?giveWord;
public?Threadframe()
{???
????super(“利用Java多線程實現漢字打字練習程序“);
setVisible(true);
setSize(400300);
panelT?=new?JPanel();
add(panelTBorderLayout.NORTH);
bstart=new?JButton(“開始“);
bstart.addActionListener(new?ActionListener()
{
????public?void?actionPerformed(ActionEvent?e)
????{
????
???? ???giveWord=new?Wordthread(label);
???????????giveWord.start();
???????????bstart.setEnabled(false);
???????????bpause.setEnabled(true);
???????????bresume.setEnabled(true);
???????????
???????????
????
????}
}
);
????panelT.add(bstart);
????
????bpause=new?JButton(“暫停“);
????bpause.setEnabled(false);
bpause.addActionListener(new?ActionListener()??????//剛開始是bstart.addActionListener造成72行空指針異常
{
????public?void?actionPerformed(ActionEvent?ae)
????{
???? giveWord.wait=true;
???? //giveWord.dd();
???? bresume.setEnabled(true);
???? bpause.setEnabled(false);
????
????}
}
);
????panelT.add(bpause);
????
????
????bresume=new?JButton(“繼續“);
????bresume.setEnabled(false);
bresume.addActionListener(new?ActionListener()
{
????public?void?actionPerformed(ActionEvent?ae)
????{
???? ????giveWord.wait=false;
???? //giveWord.bd();
???? bpause.setEnabled(true);
???? bresume.setEnabled(false);
????
????
- 上一篇:科大訊飛msc.jar包
- 下一篇:android書架效果,可以觸底刷新
評論
共有 條評論