Ben zopas java beginnen te leren. Ik ben bezig met een klein programmatje dat de tijd vergeeft.
Wat ik voorlopig al heb (elke klasse staat in andere file (ik heb 3 files dus) )
Op deze manier krijg ik bij initalisatie die huidige tijd van mijn computer. Als ik in de GUI op de button klikt komt er "Button was clicked"
Nu is de bedoeling om wanneer ik op de Button klik ook de tijdaanduiding te updaten. Dit wil ik doen via de code in commentaar in klasse refresh. Met de huidige code krijg ik echter als probleem dat "my_clock cannot be resolved".
Ik heb niet echt een idee wat ik fout doe, kan iemand mij helpen? Alvast bedankt
Wat ik voorlopig al heb (elke klasse staat in andere file (ik heb 3 files dus) )
Code:
public class TimeDemo {
public void Init(){
Clock_interface my_clock = new Clock_interface();
}
public static void main(String[] args) {
TimeDemo my_demo = new TimeDemo();
my_demo.Init();
}
}
import java.awt.*;
import java.util.Date;
import javax.swing.*;
public class Clock_interface extends JFrame {
public Date Datum = new Date();
int seconden = Datum.getSeconds();
int minuten = Datum.getMinutes();
int uren = Datum.getHours();
JButton my_button = new JButton("refresh");
JLabel my_text1 = new JLabel(Integer.toString(uren));
JLabel my_text2 = new JLabel(Integer.toString(minuten));
JLabel my_text3 = new JLabel(Integer.toString(seconden));
public Clock_interface() {
Container c = getContentPane();
c.setLayout(new FlowLayout());
c.add(my_button);
my_button.addActionListener(new Refresh(c));
c.add(my_text1);
c.add(my_text2);
c.add(my_text3);
setSize(300, 200);
show();
}
}
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;
public class Refresh implements ActionListener {
Refresh(Container c) {
}
public void actionPerformed(ActionEvent e) {
System.out.println("Button was clicked");
//my_clock.Datum = new Date();
//my_clock.my_text1.setText(Integer.toString(my_clock.Datum.getHours()));
//my_clock.my_text2.setText(Integer.toString(my_clock.Datum.getMinutes()));
//my_clock.my_text3.setText(Integer.toString(my_clock.Datum.getSeconds()));
//my_clock.my_text1.repaint();
//my_clock.my_text2.repaint();
//my_clock.my_text3.repaint();
}
}
Nu is de bedoeling om wanneer ik op de Button klik ook de tijdaanduiding te updaten. Dit wil ik doen via de code in commentaar in klasse refresh. Met de huidige code krijg ik echter als probleem dat "my_clock cannot be resolved".
Ik heb niet echt een idee wat ik fout doe, kan iemand mij helpen? Alvast bedankt