Hallo, in dem Buch "Java von Kopf bis Fuß" wird über innere Objekte gesprochen.
Auf einer Seite steht, dass ein inneres Objekt nicht an ein anderes äußeres Objekt gebunden werden kann.
Link: https://books.google.de/books?hl=de&id=5eDWcLzdAcYC&q=381#v=snippet&q=381&f=false
(Die Seite habe ich angehängt)
Ich habe versucht die Bindung zwischen das äußere und das innere Objekt aufzugeben, und das innere Objekt mit einem anderen äußeren Objekt zu verbinden, was geklappt hat.
Aber normalerweise dürfte es nicht funktionieren, ich meine auf der Seite steht es selbst, dass das innere Objekt nicht mit einem anderen äußeren Objekt verbunden werden kann.
In der Klasse Main wechsle ich die Bindungen.
Und entschuldigung wenn ich einem/einen verwechselt habe.
Auf einer Seite steht, dass ein inneres Objekt nicht an ein anderes äußeres Objekt gebunden werden kann.
Link: https://books.google.de/books?hl=de&id=5eDWcLzdAcYC&q=381#v=snippet&q=381&f=false
(Die Seite habe ich angehängt)
Ich habe versucht die Bindung zwischen das äußere und das innere Objekt aufzugeben, und das innere Objekt mit einem anderen äußeren Objekt zu verbinden, was geklappt hat.
Aber normalerweise dürfte es nicht funktionieren, ich meine auf der Seite steht es selbst, dass das innere Objekt nicht mit einem anderen äußeren Objekt verbunden werden kann.
In der Klasse Main wechsle ich die Bindungen.
Und entschuldigung wenn ich einem/einen verwechselt habe.
Code:
package logik;
import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Fenster {
private JFrame fr;
private Panel panel;
//Konstruktor
public Fenster() {
fr = new JFrame();
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//...
}
//Getter
public Panel getPanel() {
return panel;
}
public void addPanel() {
this.panel = new Panel();
}
//Setter
public void setPanel(Panel panel) {
this.panel = panel;
}
class Panel extends JPanel {
protected void paintComponent(Graphics g) {
g.setColor(Color.WHITE);
//...
}
}
}
Code:
package logik;
[code=Java]package logik;
/**
* @author Arif Ertugrul
* @since 11.02.2017
* Vergesse nie zu lächeln in jeder Situation
*/
public class Main {
public static void main(String[] args) {
Fenster a = new Fenster();
a.addPanel();
Fenster b = new Fenster();
b.setPanel(a.getPanel());
a.setPanel(null);
}
}