Hallo,
Ich bin erlerne momentan Java und arbeite momentan an einer Ampel. Das Grundgerüst steht soweit. Ich habe in meiner Klasse "Fenster" einen Button erstellt und mit diesem Button möchte ich in der "Draw" weiterarbeiten. Wenn der Button gedrückt wurde, soll die Ampelschaltung beginnen und somit neu gezeichnet werden.
Wie bekomme ich es nun hin, das ich den Button von der Klasse "Fenster" in der Klasse "Draw" verwenden kann?
Hier ist mal der wichtige Teil des Codes:
Klasse Fenster:
Klasse Draw:
Wäre nett wenn mir jemand Helfen könnte und falls ich irgendwas graviernd falsch gemachte habe (Struktur etc), würde mich das auch interessieren.
Ich bin erlerne momentan Java und arbeite momentan an einer Ampel. Das Grundgerüst steht soweit. Ich habe in meiner Klasse "Fenster" einen Button erstellt und mit diesem Button möchte ich in der "Draw" weiterarbeiten. Wenn der Button gedrückt wurde, soll die Ampelschaltung beginnen und somit neu gezeichnet werden.
Wie bekomme ich es nun hin, das ich den Button von der Klasse "Fenster" in der Klasse "Draw" verwenden kann?
Hier ist mal der wichtige Teil des Codes:
Klasse Fenster:
Java:
package ampel;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Fenster extends JFrame{
JButton Start;
JFrame jFrame;
public Fenster() {
jFrame = new JFrame();
Start = new JButton("Ampel starten!");
Start.setBounds(200, 550, 400, 50);
jFrame.setTitle("Ampel");
jFrame.setSize(800,700);
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jFrame.add(Start);
jFrame.setVisible(true);
}
}
Klasse Draw:
Java:
package ampel;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JLabel;
import javax.swing.JPanel;
import Wecker.Gui;
public class Draw extends JPanel implements ActionListener{
private static final long serialVersionUID = 1L;
protected void paintComponent(Graphics g){
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// draw //
// Rahmen //
g.setColor(Color.GRAY);
g.fillRect(300, 100, 180, 400);
g.fillRect(365, 200, 50, 400);
// Rot aus //
Color Rotaus = new Color (255, 128, 128);
g.setColor(Rotaus);
g.fillOval(340, 130, 100, 100);
// Gelb aus //
Color Gelbaus = new Color (255, 255, 136);
g.setColor(Gelbaus);
g.fillOval(340, 250, 100, 100);
// Grün aus //
Color Gruenaus = new Color (128, 255, 128);
g.setColor(Gruenaus);
g.fillOval(340, 370, 100, 100);
}
@Override
public void actionPerformed(ActionEvent e) {
}
}
Wäre nett wenn mir jemand Helfen könnte und falls ich irgendwas graviernd falsch gemachte habe (Struktur etc), würde mich das auch interessieren.