java計(jì)時(shí)開關(guān)代碼 java計(jì)時(shí)程序
求java的計(jì)時(shí)器代碼,應(yīng)該比較簡(jiǎn)單的,來(lái)看看吧。
package?test;
import?java.util.*;
import?java.awt.*;
import?java.awt.event.*;
import?java.applet.*;
public?class?Test5?extends?Applet?{
????private?final?Panel?pan?=?new?Panel();
????private?final?Label?time?=?new?Label();
????private?final?Button?btnGo?=?new?Button("開始");
????private?final?Button?btnPouse?=?new?Button("暫停");
????private?final?Button?btnReset?=?new?Button("復(fù)位");
????private?final?StopwatchThread?swThread?=?new?StopwatchThread();
???
????private?class?btnGoListener?implements?ActionListener?{
public?void?actionPerformed(ActionEvent?e)?{
???
swThread.go();
btnGo.setEnabled(false);
}
????}
????private?class?btnPouseListener?implements?ActionListener?{
???? public?void?actionPerformed(ActionEvent?e)?{
???? ???if(btnGo.isEnabled()){
???? ???return?;
???? ???}
???? ?if?(btnPouse.getLabel().equals("繼續(xù)"))?{
???? swThread.go();
???? btnPouse.setLabel("暫停");
???? ????}?else?if?(btnPouse.getLabel().equals("暫停"))?{
???? swThread.noGo();
???? btnPouse.setLabel("繼續(xù)");
???? ????}
???? }
????????}
????private?class?btnResetListener?implements?ActionListener?{
public?void?actionPerformed(ActionEvent?e)?{
????swThread.reset();
????btnGo.setEnabled(true);
????btnGo.setLabel("開始");
????btnPouse.setLabel("暫停");
}
????}
????private?class?StopwatchThread?extends?Thread?{
private?boolean?going?=?false;
private?long?prevElapsed?=?0;
private?Date?startDate?=?new?Date();
private?long?elapsedTime()?{
????return?prevElapsed?+
(going???new?Date().getTime()?-?startDate.getTime()?:?0);
}
private?String?msToString(long?time)?{
???System.out.println(time+"??"+((0*60+2)*1000+999));
if(((99*60+59)*1000+983)=time((99*60+59)*1000+999)=time){//((0*60+2)*1000+983)=time((0*60+2)*1000+999)=time
if?(time?%?1000??990)
time?+=?2;
???? swThread.noGo();
????}
String?ms,?sec,?min;
????if?(time?%?10?=?5)
time?+=?5;
????ms?=?Long.toString(time?%?1000);
????while?(ms.length()??3)
ms?=?"0"?+?ms;
????ms?=?ms.substring(0,?ms.length()?-?1);
????time?/=?1000;
????sec?=?Long.toString(time?%?60);
????if?(sec.length()?==?1)?sec?=?"0"?+?sec;
????time?/=?60;
????min?=?Long.toString(time);
????
????return?min?+?":"?+?sec?+?"."?+?ms;
}
public?void?go()?{
????startDate?=?new?Date();
????going?=?true;
}
public?void?noGo()?{
????prevElapsed?=?elapsedTime();
????going?=?false;
}
public?void?reset()?{
????going?=?false;
????prevElapsed?=?0;
}
public?void?run()?{
????while?(true)?{
time.setText(msToString(elapsedTime()));
yield();
????}
}
????}
????public?void?init()?{
setLayout(new?GridLayout(2,2));
setBackground(Color.lightGray);
setForeground(Color.black);
pan.setLayout(new?GridLayout(3,2));
pan.add(new?Label("計(jì)時(shí):"));
time.setForeground(Color.blue);
pan.add(time);
pan.add(btnGo);
pan.add(btnPouse);
pan.add(btnReset);
pan.add(new?Label());
add(pan);
btnGo.addActionListener(new?btnGoListener());
btnReset.addActionListener(new?btnResetListener());
btnPouse.addActionListener(new?btnPouseListener());
swThread.setDaemon(true);
swThread.start();
????}
????public?static?void?main(String[]?args)?{
????Test5?applet?=?new?Test5();
Frame?aFrame?=?new?Frame("計(jì)時(shí)器");
aFrame.addWindowListener(new?WindowAdapter()?{
????public?void?windowClosing(WindowEvent?e)?{
System.exit(0);
????}
});
aFrame.add(applet,?BorderLayout.CENTER);
aFrame.setSize(400,?200);
applet.init();
applet.start();
aFrame.setVisible(true);
????}
}
可以改變有注釋的那個(gè)if語(yǔ)句里面的值來(lái)判斷什么時(shí)候停止
求人用java編寫一條計(jì)時(shí)器代碼。
import?java.awt.BorderLayout;
import?java.awt.Container;
import?java.awt.GridLayout;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.awt.event.WindowEvent;
import?java.awt.event.WindowListener;
import?java.io.*;
import?java.util.*;
import?javax.swing.JButton;
import?javax.swing.JFrame;
import?javax.swing.JOptionPane;
import?javax.swing.JPanel;
import?javax.swing.JTextField;
import?javax.swing.plaf.OptionPaneUI;
public?class?Demo?{
static?boolean?isRuning=false;
static?boolean?isFirst=true;
@SuppressWarnings("unchecked")
public?static?void?main(String[]?args)?throws?Exception?{
JFrame?form1?=?new?JFrame("Form1");
JTextField?jTextField?=?new?JTextField(10);
jTextField.setSize(10,?10);
jTextField.setText("0");
jTextField.setEditable(false);
JButton?jButton?=?new?JButton("開始");
jButton.setSize(10,?10);
Thread?thread?=?new?Thread(new?Runnable()?{
@Override
public?void?run()?{
while?(true)?{
while(isRuning){
Integer?counter?=?Integer.parseInt(jTextField.getText().trim());
counter++;
jTextField.setText(counter.toString());
try?{
Thread.sleep(1000);
}?catch?(Exception?e2)?{
}
}
}
}
});
jButton.addActionListener(new?ActionListener()?{
@Override
public?void?actionPerformed(ActionEvent?e)?{
???String?text=jButton.getText().equals("開始")?"暫停":"開始";
???jButton.setText(text);
???isRuning=!isRuning;
???if(isFirst){
???thread.start();
???isFirst=false;
???}
}
});
JPanel?panel?=?new?JPanel();
panel.setSize(200,?200);
panel.add(jTextField,?BorderLayout.NORTH);
panel.add(jButton,?BorderLayout.CENTER);
form1.add(panel);
form1.setBounds(200,?100,?250,?150);
form1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
form1.addWindowListener(new?WindowListener()?{
@Override
public?void?windowOpened(WindowEvent?e)?{
//?TODO?Auto-generated?method?stub
}
@Override
public?void?windowIconified(WindowEvent?e)?{
//?TODO?Auto-generated?method?stub
}
@Override
public?void?windowDeiconified(WindowEvent?e)?{
//?TODO?Auto-generated?method?stub
}
@Override
public?void?windowDeactivated(WindowEvent?e)?{
//?TODO?Auto-generated?method?stub
}
@Override
public?void?windowClosing(WindowEvent?e)?{
???????????????//?窗口關(guān)閉前取出文本框的數(shù)字保存到外部文件,代碼在此處寫
JOptionPane.showMessageDialog(null,?"Are?you?sure?closing?");
}
@Override
public?void?windowClosed(WindowEvent?e)?{
//?TODO?Auto-generated?method?stub
}
@Override
public?void?windowActivated(WindowEvent?e)?{
//?TODO?Auto-generated?method?stub
}
});
form1.setVisible(true);
}
}
寫一個(gè)計(jì)時(shí)器 JAVA代碼是什么?
應(yīng)該用線程里面的Timer來(lái)控制package com.sy.game.test;
import java.util.Timer;
import java.util.TimerTask;
public class TimeTask {
public static void main(String[] args) {
TimeTask tTask=new TimeTask();
tTask.timeVoid();
}
public void timeVoid(){
final Timer timer = new Timer();
TimerTask tt=new TimerTask() {
@Override
public void run() {
System.out.println("到點(diǎn)啦!");
timer.cancel();
}
};
timer.schedule(tt, 3000);
}
}
整合的:
/*
* java倒計(jì)時(shí)器
* shiyang
* */
package com.sy.game.test;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.Timer;
@SuppressWarnings("unused")
public class TimeController extends JFrame implements ActionListener {
private static final long serialVersionUID = 4603262282860990473L;
private static final int DEFAULT_WIDTH = 200;
private static final int DEFAULT_HEIGHT = 100;
private static final int width = Toolkit.getDefaultToolkit()
.getScreenSize().width;
private static final int height = Toolkit.getDefaultToolkit()
.getScreenSize().height;
private Container container;
private JButton btn;
private JTextField jtfTime;
private Timer tmr;
public TimeController() {
initComponents();
Timer tmr = new Timer(1000, this);
this.tmr = tmr;
setVisible(true);
}
private void initComponents() {
this.setTitle("SY秒表");
this.setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
this.setResizable(false);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocation((width - DEFAULT_WIDTH) / 2,
(height - DEFAULT_HEIGHT) / 2);
jtfTime = new JTextField("10");
btn = new JButton("開始倒計(jì)時(shí)");
container = getContentPane();
JPanel panel = new JPanel();
panel.add(btn);
panel.add(jtfTime);
this.add(panel);
btn.addActionListener(this);
}
public void actionPerformed(ActionEvent ae) {
if (ae.getSource() == btn) {
jtfTime.setText("10");
tmr.start();
} else {
int t;
t = Integer.parseInt(jtfTime.getText());
t--;
jtfTime.setText("" + t);
if (t = 0) {
tmr.stop();
}
}
}
public static void main(String[] args) {
TimeController timeController = new TimeController();
}
}
上一篇:java代碼重構(gòu)優(yōu)化經(jīng)驗(yàn) java代碼重構(gòu)的思路
欄 目:Java編程
下一篇:沒有了
本文標(biāo)題:java計(jì)時(shí)開關(guān)代碼 java計(jì)時(shí)程序
本文地址:http://mengdiqiu.com.cn/a1/Javabiancheng/17333.html
您可能感興趣的文章
- 04-09java代碼重構(gòu)優(yōu)化經(jīng)驗(yàn) java代碼重構(gòu)的思路
- 04-09java貸款利率代碼 java利率是什么數(shù)據(jù)類型
- 04-09安卓輔助java代碼 安卓輔助用什么開發(fā)
- 04-09俄羅斯方法java源代碼 java編寫俄羅斯方塊代碼
- 04-07java入門小代碼 java簡(jiǎn)單的代碼
- 04-07繪制圖像就java代碼 java繪制圖形代碼
- 04-07java代碼異步 java異步處理方法
- 04-07java修改運(yùn)行中的代碼 java代碼在哪里修改
- 04-07java命令行代碼 java中命令行在哪打開
- 04-07java時(shí)鐘日歷代碼 java實(shí)現(xiàn)日歷


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 7什么是 WSH(腳本宿主)的詳細(xì)解釋
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 04-09java計(jì)時(shí)開關(guān)代碼 java計(jì)時(shí)程序
- 04-09java代碼重構(gòu)優(yōu)化經(jīng)驗(yàn) java代碼重構(gòu)的
- 04-09java貸款利率代碼 java利率是什么數(shù)據(jù)
- 04-09安卓輔助java代碼 安卓輔助用什么開發(fā)
- 04-09俄羅斯方法java源代碼 java編寫俄羅斯
- 04-07java入門小代碼 java簡(jiǎn)單的代碼
- 04-07繪制圖像就java代碼 java繪制圖形代碼
- 04-07java代碼異步 java異步處理方法
- 04-07java修改運(yùn)行中的代碼 java代碼在哪里
- 04-07java命令行代碼 java中命令行在哪打開
隨機(jī)閱讀
- 01-10批處理中直接執(zhí)行vbs的方法
- 01-10C#使用正則表達(dá)式抓取網(wǎng)站信息示例
- 08-05織夢(mèng)DedeCMS通過Tag標(biāo)簽獲取相關(guān)文章
- 01-10利用VBS發(fā)送短信的實(shí)現(xiàn)代碼(通過飛信
- 01-10C語(yǔ)言測(cè)試n的階乘和x的n次方
- 01-10C++基于先序、中序遍歷結(jié)果重建二叉
- 01-10C#使用Aspose.Cells創(chuàng)建和讀取Excel文件
- 01-10深入探討linux下進(jìn)程的最大線程數(shù)、進(jìn)
- 01-10修改PHPCMS頭部標(biāo)題標(biāo)簽{$head[title]}順序
- 01-10win10系統(tǒng)下安裝superset的步驟