java 进度条,不是弹出的进度条,是在JLabel或者JTextField里面显示一个进度,该怎么做呢

解决方案 »

  1.   

    楼主是这个意思么?JLabel label = new JLabel();
    JProgress progress = new JProgressBar(0,3);
    label.add(progress, BorderLayout.NORTH);Changer changer = new Changer(progress);
    //注册ActionListener
    ..........//修改进度条状态的监听类
    class Changer implements ActionListener
    {
    private JProgressBar progress;
    public Changer(JProgressBar p)
    {
    progress = p;
    } public void actionPerformed(ActionEvent a)
    {
    }
    }
      

  2.   


      import java.awt.BorderLayout;import java.io.FileInputStream;import java.io.FileNotFoundException;import javax.swing.JFrame;
    import javax.swing.JScrollPane;
    import javax.swing.JTextArea;
    import javax.swing.ProgressMonitor;
    import javax.swing.ProgressMonitorInputStream;public class Bar {
        public Bar() {
        }    public static void main(String[] args) {
            Bar bar = new Bar();
            byte b[]=new byte[30];
            JTextArea text = new JTextArea(20,20);
            JFrame jframe=new JFrame();
            jframe.setSize(280,300);
            jframe.setVisible(true);
            jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            jframe.add(new JScrollPane(text),BorderLayout.CENTER);
            jframe.validate();
            
                FileInputStream input;
                try {
                    input = new FileInputStream("D:\\jdev\\zzzzz\\Project1\\src\\project1\\Bar.java");
                    ProgressMonitorInputStream input_progress=new ProgressMonitorInputStream(null,"读取文件",input);
                    ProgressMonitor p=input_progress.getProgressMonitor();
                    while(input_progress.read(b)!=-1){
                        String s=new String(b);
                        text.append(s);
                        Thread.sleep(200);
                    }
                } catch (Exception e) {
                    // TODO
                    e.printStackTrace();
                }
            
        }
    }
    运行一下这个 看是不是你想要的