Hallo 
Ich belästige mal wieder mit dummen Fragen
Ich kann nichts für
Bin voll der Anfänger seit mir nicht böse 
Ich erstelle dank einem Button Rechtecke, deren Höhe und Breite in zwei textfeldern von dem User eingegeben werden. Nach der Erstellung von jedem Rechteck kann ich den iwohin verschieben.. Klappt alles super. Jetzt will ich in einem Textfeld für jeden einzelnen diesen Rechtecken text eingeben können der auf dem rechteck erschient. Das klappt sogar auch. Nur wenn ich für das neue Rechteck, der andere größe hat auch neuen text erstellen will der sich darauf plazieren soll, wird der alte text auf dem vorigen Rechteck überschieben mit dem neuen. Wieso??
Ich belästige mal wieder mit dummen Fragen
Ich erstelle dank einem Button Rechtecke, deren Höhe und Breite in zwei textfeldern von dem User eingegeben werden. Nach der Erstellung von jedem Rechteck kann ich den iwohin verschieben.. Klappt alles super. Jetzt will ich in einem Textfeld für jeden einzelnen diesen Rechtecken text eingeben können der auf dem rechteck erschient. Das klappt sogar auch. Nur wenn ich für das neue Rechteck, der andere größe hat auch neuen text erstellen will der sich darauf plazieren soll, wird der alte text auf dem vorigen Rechteck überschieben mit dem neuen. Wieso??
Java:
public class CreateFile extends JPanel implements ActionListener
{
..
public void actionPerformed(ActionEvent object)
{
if (object.getSource() == buttonOrangeForms)
{
try{
bausteinOrangeW = Integer.parseInt(bausteinOrangeWidth.getText());
bausteinOrangeH = Integer.parseInt(bausteinOrangeHeight.getText());
//Text für Baustein auslesen
bausteinTF = bausteinTextField.getText();
editPanel.addOrangeRectangle(bausteinTF,new Rectangle(50,50,bausteinOrangeW, bausteinOrangeH));
repaint();
}catch(NumberFormatException e){
e.printStackTrace();
}
}
}
class EditPanel extends JPanel
{
ArrayList<Rectangle> rectangles2 = new ArrayList<>();
ArrayList<String> texts = new ArrayList<>();
public EditPanel()
{
super();
}
private void drawString(Graphics g, String text, int x, int y) {
for (String line : text.split("\n"))
g.drawString(line, x, y += g.getFontMetrics().getHeight());
}
protected void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
for(Rectangle r2: rectangles2){
for(String s: texts){
g2d.setColor(orangeRect);
g2d.fill(r2);
g2d.setColor(border);
g2d.draw(r2);
drawString(g2d, s +"\nsz="+r2.width+"x"+r2.height,r2.x+10,r2.y+10);
}
}
public void addOrangeRectangle(String s,Rectangle rec2){
rectangles2.add(rec2);
texts.add(s);
repaint();
}