Witam, Mam pytanie jak w kodzie zapisać odpalanie funkcji co sekunde??
0
0
Użyj jednej z klas javax.swing.Timer lub java.util.Timer
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class TestTimera extends JFrame implements ActionListener
{
private final static int ONE_SECOND=1000;
private JTextArea info=new JTextArea(20,10);
private javax.swing.Timer timer;
//------------------------
public static void main(String args[])
{
new TestTimera();
}
//------------------------
public TestTimera()
{
super("Test Timera");
setLayout(new BorderLayout(2,2));
JToolBar tb=new JToolBar();
JButton b=new JButton(new ImageIcon("images/Play.gif"));
b.setToolTipText("Uruchomienie Timera");
b.setActionCommand("Start");
b.addActionListener(this);
tb.add(b);
b=new JButton(new ImageIcon("images/Stop.gif"));
b.setToolTipText("Zatrzymanie Timera");
b.setActionCommand("Stop");
b.addActionListener(this);
tb.add(b);
add(tb,"North");
JPanel p=new JPanel();
p.add(info);
add(p,"Center");
timer=new javax.swing.Timer(ONE_SECOND,new ActionListener()
{
public void actionPerformed(ActionEvent ae)
{
info.append("A kuku\n");
}
});
pack();
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
//------------------------
public void actionPerformed(ActionEvent ae)
{
String nazwa=ae.getActionCommand();
if (nazwa.equals("Stop"))
{
timer.stop();
}
if (nazwa.equals("Start"))
{
timer.start();
}
}
}
0
dziękuje działa, troszkę uprościłem