import java.util.Date;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.event.AncestorEvent;
import javax.swing.event.AncestorListener;
public class Main {
private static JPanel createPanel() {
JPanel panel = new JPanel();
final JLabel label = new JLabel(new Date().toString());
panel.add(label);
panel.addAncestorListener(new AncestorListener() {
@Override
public void ancestorAdded(AncestorEvent event) {
// start animation
label.setText(new Date().toString());
}
@Override
public void ancestorRemoved(AncestorEvent event) {
// stop animation
}
@Override
public void ancestorMoved(AncestorEvent event) {
}
});
return panel;
}
public static void main(String[] args) {
JFrame f = new JFrame();
final JTabbedPane jtp = new JTabbedPane();
jtp.add("One", createPanel());
jtp.add("Two", createPanel());
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(jtp);
f.pack();
f.setVisible(true);
}
}