导读热词
下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
import java.awt.*;
import java.awt.event.*;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Timer;
import javax.swing.*;
public class SimpleTimer extends JWindow {
public static void main(String[] args) {
SimpleTimer simpleTimer = new SimpleTimer();
simpleTimer.pack();
simpleTimer.setAlwaysOnTop(true);
simpleTimer.setVisible(true);
}
private Long startTimeMillis;
private JLabel label;
private SimpleDateFormat dateFormat;
private Timer timer;
public SimpleTimer() {
initDateFormat();
initConponents();
resetTime();
updateLabelText();
startTimer();
}
private void initDateFormat() {
dateFormat = new SimpleDateFormat("HH:mm:ss");
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
}
private void initConponents() {
label = new JLabel();
label.setFont(new Font(label.getFont().getName(),Font.BOLD,14));
label.setOpaque(true);
label.setBackground(Color.black);
label.setForeground(Color.white);
label.setBorder(BorderFactory.createEmptyBorder(0,2,2));
getContentPane().add(label);
final JPopupMenu popup = new JPopupMenu();
JMenuItem menuItem1 = new JMenuItem("Reset");
menuItem1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
resetTime();
}
});
popup.add(menuItem1);
JMenuItem menuItem2 = new JMenuItem("Exit");
menuItem2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
popup.add(menuItem2);
label.setComponentPopupMenu(popup);
label.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
if (e.getButton() == MouseEvent.BUTTON2
&& e.getClickCount() == 1) {
popup.setVisible(true);
}
}
});
}
private void resetTime() {
startTimeMillis = Calendar.getInstance().getTimeInMillis();
}
/**
* ラベル更新
*/
private void updateLabelText() {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
long elapsedTime = Calendar.getInstance().getTimeInMillis()
- startTimeMillis;
Date date = new Date(elapsedTime);
label.setText(dateFormat.format(date));
}
});
}
/**
* タイマー開始
*/
private void startTimer() {
timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
updateLabelText();
}
},1000);
}
}
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
相关文章
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250