Jag postar om koden. Den här funkar för mig både i Eclipse och när jag kompilerar direkt i scr-katalogen. Java-filerna skall ligga direkt under src-katalogen. (Default package)
/*
* Created on Jun 29, 2004
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
/**
* @author ovli
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class SevenApplet extends JApplet implements ActionListener {
// Dataklassen
private SevenDAO seven;
// Timer som håller reda på bytestiden.
Timer timer;
// Labeln som håller texten
JLabel label;
public void init()
{
seven = new SevenDAO();
//Execute a job on the event-dispatching thread:
//creating this applet's GUI.
try {
javax.swing.SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
createGUI();
}
});
} catch (Exception e) {
System.err.println("createGUI didn't successfully complete");
}
// Set up the timer that will perform the animation.
timer = new javax.swing.Timer(7000, this);
timer.setInitialDelay(7000);
timer.setCoalesce(false);
timer.start();
}
// Called to start the applet's execution.
public void start() {
timer.restart();
}
//Called to stop (temporarily or permanently) the applet's execution.
public void stop() {
timer.stop();
}
private void createGUI() {
label = new JLabel(
seven.getNextText());
label.setHorizontalAlignment(JLabel.CENTER);
label.setBorder(BorderFactory.createMatteBorder(1,1,1,1,Color.black));
getContentPane().add(label, BorderLayout.CENTER);
}
public void actionPerformed(ActionEvent e) {
label.setText(seven.getNextText());
}
}
/*
* Created on Jun 29, 2004
*
*/
import java.util.*;
public class SevenDAO {
public static String baseText = "Text1*Text2*Text3*Text4";
private ArrayList textList;
private int currentTextPos = 0;
public SevenDAO() {
textList = new ArrayList();
StringTokenizer st = new StringTokenizer(baseText, "*");
while (st.hasMoreElements()) {
String text = (String) st.nextElement();
textList.add(text);
System.out.println("Adding " + text);
}
}
public String getNextText() {
if (textList.size() == currentTextPos)
currentTextPos = 0;
return (String) textList.get(currentTextPos++);
}
}
