=======运行前还好好的,运行后就会莫名弹出一个Monitor类出来,明明已经写了啊======
=========源码==========
package com.hspedu.hlxy;
import javax.swing.;
import java.awt.;
import java.awt.event.*;
public class CopyTest extends JFrame {
int num;
JButton bA = new JButton("获取一个随机数");
JButton bB = new JButton("确认");
JTextField display = new JTextField("", 10);
JLabel Lspac1 = new JLabel("请输入你猜测的值:");
JLabel Lspac2 = new JLabel();
JLabel Lspac3 = new JLabel();
JPanel pnlFoot = new JPanel(new FlowLayout());
public void init() {
Font font = new Font("宋体", Font.PLAIN, 32);
setSize(500, 500);
bA.setFont(font);
bB.setFont(font);
Lspac1.setFont(font);
Lspac2.setFont(font);
display.setFont(font);
bA.addActionListener(new Monitor());
bB.addActionListener(new Monitor());
pnlFoot.add(bA);
pnlFoot.add(bB);
setLocationRelativeTo(null);
setLayout(new GridLayout(5, 1, 10, 10));
add(Lspac1);
add(display);
add(Lspac2);
add(pnlFoot);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
}
class Monitor implements ActionListener {
public void actionPerformed(ActionEvent e) {
if (e.getSource() == bA) {
num = (int) (Math.random() * 10) + 1;
}
if (e.getSource() == bB) {
int num2 = Integer.valueOf(display.getText());
if (num <= 0) JOptionPane.showMessageDialog(null, "请点击随机数");
if (num2 < num) {
JOptionPane.showMessageDialog(null, "小了");
display.setText("");
}
if (num2 > num) {
JOptionPane.showMessageDialog(null, "大了");
display.setText("");
}
if (num2 == num) {
JOptionPane.showMessageDialog(null, "正确,答案就是:" + num);
display.setText("");
num = -1;
}
}
}
}
public static void main(String[] args) {
CopyTest f = new CopyTest();
f.init();
}
}
这是因为运行时,idea会将你项目里所有文件都编译一遍,这个类编译不过,你如果暂时用不到这个类可以把这个类移出项目,或者全注释掉
你在monitor类里面没声明bA和bB啊