# Überlappung von Komponenten



## Guest (10. Apr 2006)

Hallo!

Wann überlappen sich Komponenten?
Wenn eine zeitlich vorher definiert wurde oder beim painten()?
Bei mir komischerweise das zeitlichere, das ist doch irgendwie schwachsinnig?

MfG,
Gast


----------



## AlArenal (10. Apr 2006)

Wenn man weiß was man tut, überlappt sich entweder gar nichts, oder genau so, wie man es möchte. Da meine Glaskugel gerade defekt ist, kann ich dir nicht sagen was bei dir falsch läuft.


----------



## Guest (10. Apr 2006)

Ich will ja, dass sie sich überlappen, aber in einer bestimmten Reihenfolge.


----------



## AlArenal (10. Apr 2006)

Geht noch etwas weniger genau und mit noch etwas weniger Code?

Sorry, aber dir kann keiner helfen, wenn du hier nur um den heißen Brei herumredest.


----------



## Guest (10. Apr 2006)

Code wäre nicht notwenig, wenn man den Text oben verstanden hätte.

Habs raus:

Die Komponenten werden in umgekehrter Reihenfolge gepaintet, wie man sie eigentlich painten möchte -> Stack.


```
import javax.swing.*;
import java.awt.*;

public class Test extends JFrame{
	
	public static void main(String[] args) {
		new Test();
	}
	
	Test() {
		setSize(400,400);
		JPanel pan=new JPanel();
		pan.setLayout(null);
		getContentPane().add(pan);
		Button one, two;
		one=new Button("Hi");
		two=new Button("2");
		one.setSize(100,100);
		two.setSize(200,200);
		pan.add(one);
		pan.add(two);
		setVisible(true);

	}
}
```

paintet zuerst two und dann one.


```
pan.add(two);
		pan.add(one);
```

paintet zuerst one und dann two.

Gruß,
Gast.


----------



## AlArenal (10. Apr 2006)

Anonymous hat gesagt.:
			
		

> Code wäre nicht notwenig, wenn man den Text oben verstanden hätte.



Klaro, wenn ein gewisser Jemand sich verständlich ausgedrückt hätte.


----------



## Guest (10. Apr 2006)

verständlich:

n Komponenten werden in einer gewissen Zeit initialisiert.
Diese werden in einer bestimmten Reihenfolge gepaintet.
Frage: Werden die Objekte, die man auf dem Bildschirm sehen kann, in derselben Reihenfolge dargestellt, wie sie vom System gepaintet werden?

Lösung: Nein! Problem: Stack. Java speichert die zu zeichnenden Objekte "übereinander" ab und zeichnet dann von oben nach unten (siehe Stack).

Gruß,
Gast.


----------

