0
タイマーでテキストメッセージを切り替えるjLabelを作成しようとしています。現在、私はアクションリスナーでforループを使用しようとしましたが、成功しませんでした。タイマーを使用して文字列を文字列に表示する
import javax.swing.JPanel;
import javax.swing.Timer;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JLabel;
import java.awt.Rectangle;
public class TimerX extends JPanel{
private static final long serialVersionUID = 1L;
private JLabel jLabelNumber = null;
private Timer timer = new Timer(100, null);
private String [] messages = new String [4];{
messages [0] = "HI";
messages [1] = "How";
messages [2] = "Are";
messages [3] = "You";
}
public TimerX() {
super();
initialize();
}
private void initialize() {
jLabelNumber = new JLabel();
jLabelNumber.setBounds(new Rectangle(99, 85, 38, 16));
this.setSize(300, 200);
this.setLayout(null);
this.add(jLabelNumber, null);
ActionListener updater = new ActionListener(){
public void actionPerformed(ActionEvent event) {
for(int i = 0; i<messages.length;i++)
jLabelNumber.setText(messages[i]);
}
};
timer.addActionListener(updater);
timer.start();
}
}
コードには、配列の最後の文字列のみが表示されます。ヘルプT.T
作品= D!ありがとう。しかし、イメージを変更するためにsetTextからsetIconに変更したい場合は、まだ動作しますか?私は文字列としてイメージの正しいパスを挿入したと仮定? –
画像の配列がある場合は、同じアイデアを使用できます。 –