秒表的个个位数的计算:
package Seconds;public class Watch_time extends Thread{int ms,ms_1,ms_2;int s,s_1;int m,m_1;Watch w;public void  set(Watch w) {this.w=w;}public void setNum() {ms=ms_1= s=s_1=m=m_1=0;}public void run() {while(true) {try {Thread.sleep(9);ms_1++;if(ms_1==10) {ms_1=0;ms++;}if(ms==10) {ms=0;s_1++;}if(s_1==10) {s_1=0;s++;}if(s==6) {s=0;m_1++;}if(m_1==10) {m_1=0;m++;}w.textArea.setText(m+""+m_1+":"+s+""+s_1+"."+ms+""+ms_1);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}}
Frame类:

可视化界面
package Seconds;import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTextArea;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JScrollPane;
import java.awt.SystemColor;
import java.awt.Font;
import javax.swing.UIManager;
import javax.swing.LayoutStyle.ComponentPlacement;
import org.eclipse.wb.swing.FocusTraversalOnArray;
import java.awt.Component;
import java.awt.Color;public class Watch extends JFrame {/*** */private static final long serialVersionUID = 1L;private JPanel contentPane;JTextArea textArea = new JTextArea();int a=1;int i=0;public Watch(Watch_time w) {setTitle("\u79D2\u8868\u8BA1\u65F6\u5668                                                 --\u00A9Dong");textArea.setText("00:00.00");setVisible(true);  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setBounds(100, 100, 450, 300);contentPane = new JPanel();JScrollPane scrollPane = new JScrollPane();scrollPane.setEnabled(false);contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));setContentPane(contentPane);JTextArea textArea_1 = new JTextArea();textArea_1.setFont(new Font("Monospaced", Font.BOLD | Font.ITALIC, 13));textArea_1.setEditable(false);textArea_1.setBackground(UIManager.getColor("Button.background"));JTextArea textArea_2 = new JTextArea();textArea_2.setFont(UIManager.getFont("Viewport.font"));textArea_2.setEditable(false);textArea_2.setText("   \u51C6\u5907\u8BA1\u65F6");textArea_2.setBackground(SystemColor.control);JButton btnNewButton=new CircleButton("开始",Color.GREEN);btnNewButton.setBackground(Color.CYAN);JButton btnNewButton_1=new CircleButton("\u8BB0\u5F55",Color.GREEN);JButton btnNewButton_2=new CircleButton("\u91CD\u7F6E",Color.GREEN);btnNewButton.addActionListener(new ActionListener() {@SuppressWarnings("deprecation")public void actionPerformed(ActionEvent e) {if(btnNewButton.getText().equals("开始")){ if(a==1) {w.start();textArea_2.setText("  正在计时");btnNewButton_1.setEnabled(true);btnNewButton_2.setEnabled(false);btnNewButton.setText("暂停");a=2;}else {textArea_2.setText("  正在计时");btnNewButton_1.setEnabled(true);btnNewButton_2.setEnabled(false);w.resume(); btnNewButton.setText("暂停");}}else {textArea_2.setText("     暂  "+"  停");btnNewButton_1.setEnabled(false);btnNewButton_2.setEnabled(true);w.suspend();        btnNewButton.setText("开始");}}});btnNewButton_1.setEnabled(false);btnNewButton_1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {textArea_1.append("第"+(++i)+"次计数:"+textArea.getText()+'\n');      }});btnNewButton_2.setEnabled(false);btnNewButton_2.addActionListener(new ActionListener() {@SuppressWarnings("deprecation")public void actionPerformed(ActionEvent e) {textArea_1.setText("");i=0;btnNewButton_2.setEnabled(false);textArea.setText("00:00.00");textArea_2.setText("  准备计时");w.suspend();w.setNum();}});     GroupLayout gl_contentPane = new GroupLayout(contentPane);gl_contentPane.setHorizontalGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING).addComponent(scrollPane, GroupLayout.DEFAULT_SIZE, 425, Short.MAX_VALUE).addGroup(gl_contentPane.createSequentialGroup().addGap(48).addComponent(btnNewButton, GroupLayout.PREFERRED_SIZE, 77, GroupLayout.PREFERRED_SIZE).addGap(38).addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING).addGroup(gl_contentPane.createSequentialGroup().addComponent(btnNewButton_2, GroupLayout.PREFERRED_SIZE, 72, GroupLayout.PREFERRED_SIZE).addGap(44).addComponent(btnNewButton_1, GroupLayout.PREFERRED_SIZE, 72, GroupLayout.PREFERRED_SIZE).addContainerGap()).addGroup(Alignment.TRAILING, gl_contentPane.createSequentialGroup().addComponent(textArea, GroupLayout.PREFERRED_SIZE, 128, GroupLayout.PREFERRED_SIZE).addContainerGap(134, Short.MAX_VALUE)).addGroup(Alignment.TRAILING, gl_contentPane.createSequentialGroup().addComponent(textArea_2, GroupLayout.DEFAULT_SIZE, 84, Short.MAX_VALUE).addGap(178)))));gl_contentPane.setVerticalGroup(gl_contentPane.createParallelGroup(Alignment.TRAILING).addGroup(gl_contentPane.createSequentialGroup().addComponent(scrollPane, GroupLayout.DEFAULT_SIZE, 64, Short.MAX_VALUE).addGap(33).addComponent(textArea, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addPreferredGap(ComponentPlacement.RELATED).addComponent(textArea_2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE).addGap(15).addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE).addComponent(btnNewButton_2, GroupLayout.PREFERRED_SIZE, 68, GroupLayout.PREFERRED_SIZE).addComponent(btnNewButton, GroupLayout.PREFERRED_SIZE, 66, GroupLayout.PREFERRED_SIZE).addComponent(btnNewButton_1, GroupLayout.PREFERRED_SIZE, 66, GroupLayout.PREFERRED_SIZE)).addGap(44)));textArea.setEditable(false);textArea.setFont(new Font("Monospaced", Font.BOLD | Font.ITALIC, 16));textArea.setBackground(SystemColor.control);scrollPane.setViewportView(textArea_1);contentPane.setLayout(gl_contentPane);contentPane.setFocusTraversalPolicy(new FocusTraversalOnArray(new Component[]{scrollPane, btnNewButton, textArea_1, btnNewButton_1, textArea, btnNewButton_2, textArea_2}));}
}
 
 
 

												

简单的Java秒表计时器(线程)相关推荐

  1. 简单的Java秒表计时器(线程),Java计时器使功能每分钟运行

    I have an application where I need to access a webservice every minute. I was going to use a thread ...

  2. 简单的秒表计时器java报告_简单的Java秒表计时器(线程)

    秒表的个个位数的计算: package Seconds; public class Watch_time extends Thread{ int ms,ms_1,ms_2; int s,s_1; in ...

  3. java最少有多少线程_【并发编程】一个最简单的Java程序有多少线程?

    一个最简单的Java程序有多少线程? 通过下面程序可以计算出当前程序的线程总数. import java.lang.management.ManagementFactory; import java. ...

  4. java秒表计时器显示_Java实现的计时器【秒表】功能示例

    摘要:这篇Java开发技术栏目下的"Java实现的计时器[秒表]功能示例",介绍的技术点是"Java.计时器.计时.功能.实现.示例",希望对大家开发技术学习和 ...

  5. java秒表计时器_Java实现的计时器【秒表】功能示例

    本文实例讲述了Java实现的计时器[秒表]功能.分享给大家供大家参考,具体如下: 应用名称:Java计时器 用到的知识:Java GUI编程 开发环境:win8+eclipse+jdk1.8 功能说明 ...

  6. java秒表计时器_Java-计时器/秒表GUI

    问题是您的应用程序中只有一个线程.您应该至少有两个:一个用于更新文本的UI,另一个用于计算时间. 如果只有一个线程,它将挂在while(true)循环中,而Swing永远无法更新视图. 我使用两个线程 ...

  7. 一次简单的JAVA进程到线程资源使用率异常分析

    1 前言导读 开发&测试人员在应用运行&测试过程中会遇到以下常见问题 在测试&调试过程中,应用会出现卡顿或接口响应失败问题,不知如何入手? 开发&测试人员在排查响应失败 ...

  8. 一个简单的Java计时器项目,附源码

    学Java开发的小伙伴都会想着做一些项目来检验自己的学习成果,今天小千就来分享一个简单的Java计时器项目,源码也放在文中,大家可以参考一下. Java计时器项目 开发环境:win8+eclipse+ ...

  9. 用js做一个简单的秒表计时器

    用js做一个简单的秒表计时器 具体代码如下 <!DOCTYPE html> <html lang="en"><head><meta cha ...

最新文章

  1. return *this和return this的区别
  2. Prim算法(最小生成树;例题:nyoj38)
  3. python怎么导入视频-Python模块导入详解
  4. CentOS系统Yum源配置
  5. iptables实现访问A的请求重定向到B
  6. 从Servlet 到ApplicationContext
  7. php 取url根域名,php中取得URL的根域名的代码
  8. 获取父线程 java_java子线程中获取父线程的threadLocal中的值
  9. photoshop问题
  10. zs040蓝牙模块使用方法_如何使用车载蓝牙播放手机音乐的方法
  11. 电商设计师套用PSD分层模板,玩转详情页的!
  12. java连接mysql抛异常_Java 连接MySQL数据库 插入中文 抛出异常
  13. keras安装不成功超时
  14. EFR32 晶振电容设置
  15. 浅谈几个倾斜摄影三维模型的修补软件
  16. 【图像压缩】DCT图像无损压缩【含GUI Matlab源码 726期】
  17. win7+sp1安装vs2013
  18. NOIP2012P4 文化之旅 题解
  19. CentOS 7.5 搭建以太坊私联(联盟链)及区块链浏览器
  20. 薪水支付系统领域驱动设计实践

热门文章

  1. Linux - Ubuntu 18.04 网络配置(YAML)
  2. ”AMD锐龙3000上市 Intel酷睿i5-9600K处理器大降价
  3. 关于Eclipse中突然冒出一个configure build path的提示
  4. 暗月ACK靶场 WP
  5. 打工人是什么梗?为什么打工人都用企业邮箱?打工是不可能打工的!
  6. QT打开外部程序并嵌入Qt界面
  7. poj pku 1673 EXOCENTER OF A TRIANGLE 三角形 垂心
  8. python求和函数sum_python求和函数sum()详解
  9. 函数式编程语言收藏列表
  10. FLUENT-UDF日记-10-DEFINE_RW_FILE