📄 pb.java
字号:
import java.awt.*;
import javax.swing.JProgressBar;
import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.event.*;
import javax.swing.*;
public class Pb extends JProgressBar
{
JButton startButton=new JButton("Start");
private Timer timer;
private Baction baction;
private Taction taction;
boolean isstarted=false;
boolean isfinished=false;
public final static int ONE_SECOND=1000;
private int BAR_LENGTH;
public Pb(int min, int max)
{
super(min,max);
startButton.addActionListener(baction);
BAR_LENGTH=max;
setBackground (Color.white);
setForeground (Color.blue);
setBorderPainted(true);
setString("ARM is Ayalysing,please wait...");
taction=new Taction();
timer=new Timer(ONE_SECOND,taction);
setStringPainted(true);
}
public void hasFinished()
{
isfinished=true;
}
class Taction implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if(isfinished)
{
Pb.this.timer.stop();
Pb.this.setIndeterminate(false);
Pb.this.setString("Analyse Finished");
Pb.this.setValue(BAR_LENGTH);
isfinished=false;
Pb.this.repaint();
}
}
}
class Baction implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
//if(!Pb.this.isstarted)
//{
Pb.this.setIndeterminate(true);
Pb.this.setString("ARM is Ayalysing,please wait...");
Pb.this.timer.start();
Pb.this.isstarted=true;
Pb.this.setStringPainted(true);
//Pb.this.repaint();
//}
}
}
public static void main(String args[])
{JPanel pane = new JPanel();
FlowLayout lm = new FlowLayout(FlowLayout.LEFT);
pane.setLayout(lm);
JFrame jf = new JFrame("Progressbar");
jf.setSize(500,100);
// jf.setVisible(true);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Pb pbar=new Pb(0,500);
//pbar.startButton.addActionListener(pbar.baction);
pane.add(pbar);
pane.add(pbar.startButton);
jf.setContentPane(pane);
//pane.setVisible(true);
jf.setVisible(true);
while(!pbar.isstarted)
{
try{java.lang.Thread.sleep(1000);}
catch(Exception e){;}
//jf.setVisible(true);
}
try{java.lang.Thread.sleep(3000);}
catch(Exception e){;}
pbar.hasFinished();
}
}
//class StartButton extends
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -