功能:根据输入的数字,在屏幕下方画几个方块。
问题:为何第一次显示后马上屏蔽,之后再点击按钮才正常显示?
import java.awt.*; import javax.swing.*;
import java.util.*; import java.awt.event.*;
public class fs extends JFrame {
public static void main(String args[]) {
Demo myDemo=new Demo();
}
}
class Demo extends JFrame implements ActionListener {
JTextField input1= new JTextField(4);
JButton start=new JButton("开始");
int num;
int xo=200, yo=200;
public Demo() {
setSize(1200,800);
setLayout(new FlowLayout());
Container con=getContentPane();
con.add(new JLabel("请输入(1—10)"));
con.add(input1);
con.add(start);
start.addActionListener(this);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
num=Integer.parseInt(input1.getText());
Graphics g = getGraphics();
for (int i=0; i<num; i++) {
drawBlock(g);
xo=xo+40;
}
}
private void drawBlock(Graphics g) {
g.setColor(Color.blue);
g.fillRect(xo, yo, 30, 100);
}
}
------解决方案--------------------
不是很晓得 我用的是jdk1.6