请大家看一下我的代码,我的功能是提示用户:请稍候......
主要的目的是希望"......"这省略号动起来,一个一个的动起来,下面是两个方法实现的,主要是想请教利用数组的方法,我用数组实现了功能,但是我在定义数组时是自己手动写死了代码,写死了几个"."的出现,我希望哪位前辈指教一下我如何动态定义这个数组,因为利用数组是我的弱项!谢谢
package org.qhit.syh.tb;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
public class ShenYueHao extends JFrame{
private JLabel jl=null;
private Container c;
private String str1="请稍候";
public ShenYueHao(){
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(null);
jl = new JLabel(str1);
jl.setBounds(50,80,100,200);
c = new Container();
c = getContentPane();
this.c.add(jl);
//启动线程
new DianDian(this).start();
this.setBounds(0,0,800,600);
this.setVisible(true);
}
public JLabel getjl(){
return jl;
}
public static void main(String[] args){
new ShenYueHao();
}
}
class DianDian extends Thread{
ShenYueHao s;
String[] tempstr1={".","..","...","....",".....","......"};
String tempstr="请稍候";
public DianDian(ShenYueHao s){
this.s=s;
}
public void run(){
while(true){
//=====================以下是一个利用数组的方法
for(int i=0;i<tempstr1.length;i++){
s.getjl().setText(tempstr+tempstr1[i]);
System.out.println(s.getjl().getText());
try{
Thread.sleep(100);
} catch(InterruptedException e){
e.getStackTrace();
}
}
//===============================================
//=========================这是一个硬编码的方法,比较死板
// if(s.getjl().getText().equals("请稍候")){
// s.getjl().setText("请稍候"+".");
// }
// else if(s.getjl().getText().equals("请稍候.")){
// s.getjl().setText("请稍候..");
// }
// else if(s.getjl().getText().equals("请稍候..")){
// s.getjl().setText("请稍候...");
// }
// else if(s.getjl().getText().equals("请稍候...")){
// s.getjl().setText("请稍候");
// }
//==============================================
}
}
}