Hallo,
ich wollte auf ein sich laufend veränderndes Bild von der paint-Methode ein JButton bzw. ein JLabel hinzufügen. Da ich aber am Klassenbeginn mit
gearbeitet habe, kann ich ja kein eigenes, separates Panel erstellen oder doch ?
Wie würde man hier ein JButton bzw. JLabel auf ein JPanel adden ?
Danke für eure Hilfe
Hier der Code:
ich wollte auf ein sich laufend veränderndes Bild von der paint-Methode ein JButton bzw. ein JLabel hinzufügen. Da ich aber am Klassenbeginn mit
Code:
extends JPanel
Wie würde man hier ein JButton bzw. JLabel auf ein JPanel adden ?
Danke für eure Hilfe
Hier der Code:
Java:
package check;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Graphics;
import java.awt.Label;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class ZweiObjekte extends JPanel{
private JFrame f;
public int x;
public int y;
Random randomzahl;
Random randomfarbe;
public ZweiObjekte(){
randomzahl = new Random();
randomfarbe = new Random();
System.out.println("Hallo");
f = new JFrame("Fenster mit sehr vielen Punkten");
f.setSize(800,800);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setResizable(false);
f.add(this);
f.setVisible(true);
}
public void paint(Graphics g){
Addiere(x,y);
Color color = new Color(randomfarbe.nextInt(256), randomfarbe.nextInt(256), randomfarbe.nextInt(256));
g.setColor(color);
g.drawLine(x, y, (2*x), (2*y));
g.drawLine(x, y, x, y);
}
private void Addiere(int x, int y) {
this.x = ((randomzahl.nextInt(20)) * (randomzahl.nextInt(20)));
this.y = ((randomzahl.nextInt(20)) * (randomzahl.nextInt(20)));
try {
Thread.sleep(5);
repaint(); // --> mehrer Quadrate
//f.repaint(); // --> nur ein Quadrat
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(this.x > randomzahl.nextInt(1000)){
this.x = randomzahl.nextInt(20);
}
}
public static void main(String[] args) {
new ZweiObjekte();
}
}