Hallo zusammen,
ich will in Java einen Meeting Kosten Rechner programmieren.
Klasse Viewer
Klasse Task
So und das Problem ist jetz das im Textfeld alle 5 Sekunden eine Ausgabe der Zeit und der aktuellen Kosten angezeigt werden soll.
Wie kann ich das Textfeld alle 5 Sekunden aktualisieren, so das die Zeit und Kosten ausgegeben werden?
LG Stinson91
ich will in Java einen Meeting Kosten Rechner programmieren.
Klasse Viewer
Java:
import javax.swing.SwingUtilities;
import java.awt.BorderLayout;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JTextField;
import java.util.Timer;
public class Viewer extends JFrame
{
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JButton Start = null;
private JTextField ausgabe = null;
private JButton getStart()
{
if (Start == null)
{
Start = new JButton();
Start.setText("Start");
Start.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(java.awt.event.ActionEvent e)
{
Timer timer = new Timer();
timer.schedule(new Task(),0,5000);
}
});
}
return Start;
}
private JTextField getAusgabe()
{
if (ausgabe == null)
{
ausgabe = new JTextField();
}
return ausgabe;
}
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
Viewer thisClass = new Viewer();
thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
thisClass.setVisible(true);
}
});
}
public Viewer()
{
super();
initialize();
}
private void initialize()
{
this.setSize(300, 200);
this.setContentPane(getJContentPane());
this.setTitle("JFrame");
}
private JPanel getJContentPane()
{
if (jContentPane == null)
{
jContentPane = new JPanel();
jContentPane.setLayout(new BorderLayout());
jContentPane.add(getStart(), BorderLayout.SOUTH);
jContentPane.add(getAusgabe(), BorderLayout.CENTER);
}
return jContentPane;
}
}
Klasse Task
Java:
import java.util.TimerTask;
import java.util.Date;
import java.text.SimpleDateFormat;
public class Task extends TimerTask
{
private double Kosten1;
private double Kosten2;
private String Datum;
private String Test;
public Task()
{
this.setKosten1(0);
this.setKosten2(0);
this.setDatum(null);
this.setTest(null);
}
public Task(double value1,double value2,String value3,String value4)
{
this.setKosten1(value1);
this.setKosten2(value2);
this.setDatum(value3);
this.setTest(value4);
}
public void setKosten1(double kosten1)
{
Kosten1 = kosten1;
}
public double getKosten1()
{
return Kosten1;
}
public void setKosten2(double kosten2)
{
Kosten2 = kosten2;
}
public double getKosten2()
{
return Kosten2;
}
public void setDatum(String datum)
{
Datum = datum;
}
public String getDatum()
{
return Datum;
}
public void setTest(String test)
{
Test = test;
}
public String getTest()
{
return Test;
}
public void run()
{
Date date = new Date();
SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy hh:mm:ss");
this.setDatum(format.format(date));
}
}
So und das Problem ist jetz das im Textfeld alle 5 Sekunden eine Ausgabe der Zeit und der aktuellen Kosten angezeigt werden soll.
Wie kann ich das Textfeld alle 5 Sekunden aktualisieren, so das die Zeit und Kosten ausgegeben werden?
LG Stinson91
Zuletzt bearbeitet: