有人可以告訴我為什么Timer試圖將int轉(zhuǎn)換為String.這是一直存在的錯誤.
CurrentTimePrinter.java:48: error: incompatible types: int cannot be
converted to String
time = new Timer(1000,listener);CurrentTimePrinter.java:49: error: cannot find symbol
time.start();
import javax.swing.*;import java.awt.*;import java.io.*;import java.util.Date;import java.util.Timer;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.Color;import java.awt.Font;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextField;import java.awt.BorderLayout;public class CurrentTimePrinter extends JFrame { private JButton Exitbutton; private JTextField textField; private static final int FIELD_WIDTH = 10; private static final int FRAME_WIDTH = 600; private static final int FRAME_HEIGHT = 400; private ActionListener listener; public Timer time; public CurrentTimePrinter() { //listener = new CtpListener(); createComponents(); setSize(FRAME_WIDTH, FRAME_HEIGHT); } public void createComponents() { Color orange = new Color(255,165,0); Font font = new Font("Times New Roman", Font.BOLD, 14); textField = new JTextField(FIELD_WIDTH); Exitbutton = new JButton("EXIT"); class CtpListener implements ActionListener { public void actionPerformed(ActionEvent event) { textField.setText("" new Date()); Date now = new Date(); System.out.println(now); } } ActionListener listener = new CtpListener(); time = new Timer(1000,listener); time.start(); Exitbutton.setFont(font); Exitbutton.setForeground(Color.BLACK); ExitButtonListener exitListener = new ExitButtonListener(); Exitbutton.addActionListener(exitListener); JPanel panel1 = new JPanel(); time = new Timer(1000, listener); time.start(); JPanel panel2 = new JPanel(); panel1.setBackground(orange); panel1.add(Exitbutton); panel2.add(textField); JPanel contentPane = new JPanel(new BorderLayout()); contentPane.add(panel1, BorderLayout.SOUTH); contentPane.add(panel2, BorderLayout.CENTER); setContentPane(contentPane); } class ExitButtonListener implements ActionListener { public void actionPerformed(ActionEvent event) { System.exit(0); } } public static void main(String[] args) { JFrame frame = new CurrentTimePrinter(); frame.setTitle("Current Time"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setLocationRelativeTo(null); frame.setVisible(true); }}
解決方法:
您正在使用java.util.Timer.你想要javax.swing.Timer.
在導入中替換它,它應該是:
import javax.swing.Timer;
來源:https://www.icode9.com/content-1-263501.html