Java写了两个奇怪的线程
来源:互联网 发布:360压缩软件for mac 编辑:程序博客网 时间:2024/04/20 04:31
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ThreadCeShi extends JFrame{
static Threadt t;
static Threadt2 t2;
JPanel timePanel=new JPanel();
JTextField timeText=new JTextField(30);
JLabel timeLabel=new JLabel();
JLabel timeLabel2=new JLabel();
ThreadCeShi()
{
setTitle("TheadTest");
setSize(400,400);
setVisible(true);//窗体显示
setResizable(false);//设置窗体不可变大小
setLayout(null);
this.setBackground(Color.blue);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//窗体关闭
validate();
int screenHeight=(int)Toolkit.getDefaultToolkit().getScreenSize().getHeight();
int screenWidth=(int)Toolkit.getDefaultToolkit().getScreenSize().getWidth();//屏幕大小
int shellHeight=(int)getBounds().getHeight();
int shellWidth=(int)getBounds().getWidth();//窗体大小
if(shellHeight>screenHeight)shellHeight=screenHeight;
if(shellWidth>screenWidth)shellWidth=screenWidth;
this.setLocation((screenWidth-shellWidth)/2,(screenHeight-shellHeight)/2);//设置窗体居中
add(timePanel);
timePanel.setBounds(100,100,200,130);
timePanel.setBackground(Color.WHITE);
timePanel.add(timeLabel);
timePanel.setLayout(null);
timeLabel.setText("你好!");
timeLabel.setFont(new Font("华文行楷",1,15));//设置字体
timeLabel.setBounds(0,0,200,60);
timePanel.add(timeLabel2);
timeLabel2.setText("啊哈!");
timeLabel2.setFont(new Font("微软雅黑",1,15));
timeLabel2.setBounds(0,60,200,60);
t=new Threadt();
t2=new Threadt2();
t.run();
t2.run();
}
class Threadt implements Runnable
{
public void run() {
while(true)
{
try{
//System.out.println(new Date()); //打印当前时间
Thread.sleep(1);//休眠1毫秒
}catch(Throwable t){
t.printStackTrace();
}
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
timeLabel.setText(df.format(new Date()));
t2.run();
}
}
}
class Threadt2 implements Runnable
{
public void run()
{
while(true)
{
try
{
Thread.sleep(1);
}catch(Throwable t2)
{
t2.printStackTrace();
}
SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//设置日期格式
timeLabel2.setText(df.format(new Date()));
t.run();
}
}
}
public static void main(String args[])
{
new ThreadCeShi();
}
}
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;
import java.awt.*;
import java.text.SimpleDateFormat;
import java.util.Date;
public class ThreadCeShi extends JFrame{
static Threadt t;
static Threadt2 t2;
JPanel timePanel=new JPanel();
JTextField timeText=new JTextField(30);
JLabel timeLabel=new JLabel();
JLabel timeLabel2=new JLabel();
ThreadCeShi()
{
setTitle("TheadTest");
setSize(400,400);
setVisible(true);//窗体显示
setResizable(false);//设置窗体不可变大小
setLayout(null);
this.setBackground(Color.blue);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//窗体关闭
validate();
int screenHeight=(int)Toolkit.getDefaultToolkit().getScreenSize().getHeight();
int screenWidth=(int)Toolkit.getDefaultToolkit().getScreenSize().getWidth();//屏幕大小
int shellHeight=(int)getBounds().getHeight();
int shellWidth=(int)getBounds().getWidth();//窗体大小
if(shellHeight>screenHeight)shellHeight=screenHeight;
if(shellWidth>screenWidth)shellWidth=screenWidth;
this.setLocation((screenWidth-shellWidth)/2,(screenHeight-shellHeight)/2);//设置窗体居中
add(timePanel);
timePanel.setBounds(100,100,200,130);
timePanel.setBackground(Color.WHITE);
timePanel.add(timeLabel);
timePanel.setLayout(null);
timeLabel.setText("你好!");
timeLabel.setFont(new Font("华文行楷",1,15));//设置字体
timeLabel.setBounds(0,0,200,60);
timePanel.add(timeLabel2);
timeLabel2.setText("啊哈!");
timeLabel2.setFont(new Font("微软雅黑",1,15));
timeLabel2.setBounds(0,60,200,60);
t=new Threadt();
t2=new Threadt2();
t.run();
t2.run();
}
class Threadt implements Runnable
{
public void run() {
while(true)
{
try{
//System.out.println(new Date()); //打印当前时间
Thread.sleep(1);//休眠1毫秒
}catch(Throwable t){
t.printStackTrace();
}
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
timeLabel.setText(df.format(new Date()));
t2.run();
}
}
}
class Threadt2 implements Runnable
{
public void run()
{
while(true)
{
try
{
Thread.sleep(1);
}catch(Throwable t2)
{
t2.printStackTrace();
}
SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//设置日期格式
timeLabel2.setText(df.format(new Date()));
t.run();
}
}
}
public static void main(String args[])
{
new ThreadCeShi();
}
}
阅读全文
1 0
- Java写了两个奇怪的线程
- 讨论java两个奇怪的语法现象
- 《Java面试试题》写一个两个线程之间的死锁
- java会合构架中TreeSet的奇怪现象两个
- 写了两个简单的排序函数
- 关于JAVA线程的一个奇怪的现象
- java线程的两个实现
- firefox 两个奇怪的问题
- 两个非常奇怪的梦
- 发现了Java一个很奇怪的问题
- JAVA多线程之两个线程同时写一个文件
- java写的线程池
- async太好用了,用了两个小时写的代码
- 花了两个小时做了那么一个很丑的Java写的三角形判断器......
- 用java写两个线程,一个线程打印1-52,另一个线程打印字母A-Z
- 用java写两个线程,一个线程打印1-52,另一个线程打印字母A-Z
- 用java写两个线程,一个线程打印1-52,另一个线程打印字母A-Z
- 奇怪的java日期
- RecycleView在addItemDecoration之后每次重新加载这个页面的时候,item之间的间距都会不断变大大概是变大一倍
- SecureCRT连接(内网和外网)虚拟机中的Linux系统(Ubuntu)
- ModuleNotFoundError: No module named 'mysite'
- 【学习笔记】几个主流云服务商服务简要比对
- 秒杀系统架构分析与实战 for java
- Java写了两个奇怪的线程
- 【反序表+DP】51Nod 1020 逆序排列
- key_values
- Cython的用法以及填坑姿势
- Golang之文本处理
- python设计模式之备忘录
- cifar10神经网络训练测试及代码解析
- B
- PAT乙级1068. 万绿丛中一点红(20)