我正在尝试创建一个应用程序,我想添加一个时钟。我正在使用 JPanel 和 ActionListener 制作时钟,并且还想使用 Timer。Swing 教程说要实例化 Timer,你会说 new Timer(numMillis, this(an ActionListener)),但是,“this”似乎不适用于 JPanel 项目。我会在 Timer 构造函数中添加什么来正确实例化 Timer?
public ClockPanel() {
super();
clockLabel.setText(sdf.format(new Date(System.currentTimeMillis())));
clockLabel.setFont(new Font("Monospaced", Font.BOLD, 100));
clockLabel.setOpaque(true);
clockLabel.setBackground(Color.black);
clockLabel.setForeground(Color.white);
timer = new Timer(500, this);
timer.setRepeats(true);
timer.start();
clockLabel.setVisible(true);
initComponents();
}
public void actionPerformed(ActionEvent e){
if(e.getSource().equals(timer))
clockLabel.setText(sdf.format(new Date(System.currentTimeMillis())));
}