如果解决了追加80分!java画图问题

来源:百度知道 编辑:UC知道 时间:2024/06/23 01:05:02
编写一个模拟屏幕保护的应用程序.此应用程序使用能随机画出线条.在绘出100根线后,应用程序应清除自己,并重新开始画图,创建一个javax.swing类中的一个Timer类的实例,每隔1000ms(1秒)调用ationPerformed方法(方法里有repaint()).
以上的程序我可以实现了(在我的空间里,http://hi.baidu.com/zpz2009),问题是修改以上程序,在应用程序清除自己并重新开始画线条之前,允许用户输入随机的线条的数目,使用一个JTextField来获取这个值.用忘掉应能在程序执行时随时在JTextField输入新的数字.用一个内部类来处理JTextField的事件.
我写了以下代码,但是却没有执行画线.哪位高手帮我看看.如果事情解决了.追加80分!
------------PaintPanel.java---------------------------
import javax.swing.JPanel;
import javax.swing.Timer;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import javax.swing.event.*;
public class PaintPanel extends JPanel {
private int count;
private Timer timer;
public PaintPanel(){
ActionListener taskPerformer = new ActionListener() {
public void actionPerformed(ActionEvent evt) {
repaint

main
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
/**
* 设计总体思想就是 通过一个随机函数得到随机坐标,重写paint方法绘制一些随机线条
* 一秒钟刷新一次页面,因为坐标是随机产生,因此坐标一样的几率很小,看起来就是在动了
*
*/
public class ScreenProtect extends JFrame {
//线条数目
private int count = 100;
//输入域
private JTextField setCountText;
// private Timer timer;
private PaintPanel panel1;
private JPanel panel2;
/**
* 构造函数
*/
public ScreenProtect() {
//设置title
super("ScreenProtect");
setCountText = new JTextField("输入线数", 10);
//给输入框添加监听事件,按回车执行
setCountText.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
//设置线条数目,panel1刷新的时候都会读取count
pane