Hallo Leute ... Kann mir jemand sagen wo das Problem liegt??? Ich kappiere es nicht warum mein programm Fehler wirft... Hier den Code
Das Problem ist das in editPanel nicht anhand von den TextFields-Eingaben gezeichnet wird.. Es passiert nix wenn ich was eingebe und auf paint qausi drücke bleibt editPanel dennoch leer..Wiesonicht?
Java:
public class EditPanel extends JPanel {
public EditPanel()
{
}
protected void paintComponent(Graphics g) {
super.paintComponent(g);
CreateFile cf = new CreateFile();
int centerX = getWidth()/2;
int beginPosition = (getHeight()-(cf.headerH + cf.contentH+ cf.footerH+cf.tile1H+cf.tile3H))/2;
//header
Rectangle headerRect = new Rectangle(centerX-cf.headerW/2,beginPosition,cf.headerW,cf.headerH);
g.setColor(new Color(230,227,224)); //gray
headerRect.translate(-cf.tile2W/2,cf.tile1H);
g.fill3DRect(headerRect.x, headerRect.y, headerRect.width, headerRect.height,true);
//content
Rectangle contentRect = new Rectangle(centerX-cf.contentW/2,beginPosition + cf.headerH,cf.contentW,cf.contentH);
g.setColor(new Color(230,27,224));
contentRect.translate(-cf.tile2W/2,cf.tile1H);
g.fill3DRect(contentRect.x, contentRect.y, contentRect.width, contentRect.height,true);
//footer
Rectangle footerRect = new Rectangle(centerX-cf.footerW/2,beginPosition+cf.headerH+cf.contentH,cf.footerW,cf.footerH);
g.setColor(new Color(20,227,224));
footerRect.translate(-cf.tile2W/2,cf.tile1H+cf.tile3H);
g.fill3DRect(footerRect.x, footerRect.y, footerRect.width, footerRect.height,true);
//tile 1
Rectangle tile1Rect = new Rectangle(centerX-cf.headerW/2-cf.tile2W/2,beginPosition,cf.tile1W,cf.tile1H);
g.setColor(new Color(211,111,53));
g.fill3DRect(tile1Rect.x, tile1Rect.y, tile1Rect.width, tile1Rect.height,true);
//tile 2
Rectangle tile2Rect = new Rectangle(centerX+cf.headerW/2-cf.tile2W/2,beginPosition+cf.tile1H,cf.tile2W,cf.tile2H);
g.setColor(new Color(211,111,53));
g.fill3DRect(tile2Rect.x, tile2Rect.y, tile2Rect.width, tile2Rect.height,true);
//tile3
contentRect.translate(0,cf.tile3H);
Rectangle tile3Rect = new Rectangle(centerX-cf.headerW/2-cf.tile2W/2,beginPosition+cf.tile1H+cf.headerH+cf.contentH,cf.tile3W,cf.tile3H);
g.setColor(new Color(211,111,53));
g.fill3DRect(tile3Rect.x, tile3Rect.y, tile3Rect.width, tile3Rect.height,true);
//baustein
Rectangle bausteinRect = new Rectangle(getX(),getY(),cf.bausteinW,cf.bausteinH);
g.setColor(new Color(211,111,53));
g.fill3DRect(bausteinRect.x, bausteinRect.y, bausteinRect.width, bausteinRect.height,true);
}
}
Java:
public class CreateFile extends JPanel implements ActionListener
{
EditPanel editPanel = new EditPanel();
JPanel websitePanel;
JPanel layoutPanel;
JPanel fixFormsPanel;
JPanel individualFormsPanel;
JLabel website;
JLabel logo;
..........
public CreateFile()
{
initComponents();
}
public void initComponents()
{
/* ****************** Initialisierung ************************* */
//Panels
websitePanel = new JPanel();
layoutPanel = new JPanel();
fixFormsPanel = new JPanel();
individualFormsPanel = new JPanel();
//Labels
website = new JLabel();
logo = new JLabel();
header = new JLabel();
content = new JLabel();
footer = new JLabel();
tile1 = new JLabel();
tile2 = new JLabel();
tile3 = new JLabel();
baustein = new JLabel();
hinweis = new JLabel();
//Textfelder
websiteTextField = new JTextField();
headerWidth = new JTextField();
headerHeight = new JTextField();
contentWidth = new JTextField();
contentHeight = new JTextField();
footerWidth = new JTextField();
footerHeight = new JTextField();
tile1Width = new JTextField();
tile1Height = new JTextField();
tile2Width = new JTextField();
tile2Height = new JTextField();
tile3Width = new JTextField();
tile3Height = new JTextField();
bausteinWidth = new JTextField();
bausteinHeight = new JTextField();
//Buttons
buttonLogoUpload = new JButton();
buttonCreateLayout = new JButton();
buttonFixForms = new JButton();
buttonIndividualForms = new JButton();
buttonCreateLayout.addActionListener(this);
buttonFixForms.addActionListener(this);
buttonIndividualForms.addActionListener(this);
GroupLayout layoutPanelLayout = new GroupLayout(layoutPanel);
layoutPanel.setLayout(layoutPanelLayout);
layoutPanelLayout.setHorizontalGroup(
layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, layoutPanelLayout.createSequentialGroup()
.addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(buttonCreateLayout, 86, 86, 86)
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layoutPanelLayout.createSequentialGroup()
.addComponent(header, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(headerWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(headerHeight, 40, 40, 40))
.addGroup(layoutPanelLayout.createSequentialGroup()
.addComponent(content, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(contentWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(contentHeight, 40, 40, 40))
.addGroup(layoutPanelLayout.createSequentialGroup()
.addComponent(footer, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(footerWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(footerHeight, 40, 40, 40))))
.addGap(14, 14, 14))
);
layoutPanelLayout.setVerticalGroup(
layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layoutPanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(header, 25, 25, 25)
.addComponent(headerWidth, 25, 25, 25)
.addComponent(headerHeight, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(content, 25, 25, 25)
.addComponent(contentWidth, 25, 25, 25)
.addComponent(contentHeight, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layoutPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(footer, 25, 25, 25)
.addComponent(footerWidth, 25, 25, 25)
.addComponent(footerHeight, 25, 25,25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
.addComponent(buttonCreateLayout, 30, 30, 30)
.addContainerGap())
);
GroupLayout fixFormsPanelLayout = new GroupLayout(fixFormsPanel);
fixFormsPanel.setLayout(fixFormsPanelLayout);
fixFormsPanelLayout.setHorizontalGroup(
fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, fixFormsPanelLayout.createSequentialGroup()
.addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(buttonFixForms, 86, 86, 86)
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addComponent(tile1, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile1Width, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile1Height, 40, 40, 40))
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addComponent(tile2, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile2Width, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile2Height, 40, 40, 40))
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addComponent(tile3, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile3Width, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile3Height, 40, 40, 40))))
.addGap(14, 14, 14))
);
fixFormsPanelLayout.setVerticalGroup(
fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(tile1, 25, 25, 25)
.addComponent(tile1Width, 25, 25, 25)
.addComponent(tile1Height, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(tile2, 25, 25, 25)
.addComponent(tile2Width, 25, 25, 25)
.addComponent(tile2Height, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(fixFormsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(tile3, 25, 25, 25)
.addComponent(tile3Width, 25, 25, 25)
.addComponent(tile3Height, 25, 25,25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
.addComponent(buttonFixForms, 30, 30, 30)
.addContainerGap())
);
GroupLayout individualFormsPanelLayout = new GroupLayout(individualFormsPanel);
individualFormsPanel.setLayout(individualFormsPanelLayout);
individualFormsPanelLayout.setHorizontalGroup(
individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, individualFormsPanelLayout.createSequentialGroup()
.addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(buttonIndividualForms, 86, 86, 86)
.addGroup(individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(individualFormsPanelLayout.createSequentialGroup()
.addComponent(baustein, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bausteinWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bausteinHeight, 40, 40, 40))
))
.addGap(14, 14, 14))
);
individualFormsPanelLayout.setVerticalGroup(
individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(individualFormsPanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(baustein, 25, 25, 25)
.addComponent(bausteinWidth, 25, 25, 25)
.addComponent(bausteinHeight, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
.addComponent(buttonIndividualForms, 30, 30, 30)
.addContainerGap())
);
GroupLayout layout = new GroupLayout(this);
this.setLayout(layout);
this.setBackground(new Color(42, 38, 36));
layout.setHorizontalGroup(
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(5 ,5, 5)
.addComponent(editPanel, GroupLayout.DEFAULT_SIZE,GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING, false)
.addComponent(websitePanel, GroupLayout.DEFAULT_SIZE, 0, Short.MAX_VALUE)
.addComponent(layoutPanel, GroupLayout.DEFAULT_SIZE, 0, Short.MAX_VALUE)
.addComponent(fixFormsPanel, GroupLayout.DEFAULT_SIZE, 0, Short.MAX_VALUE)
.addComponent(individualFormsPanel, GroupLayout.DEFAULT_SIZE,0, Short.MAX_VALUE))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(20 , 20, 20)
.addComponent(websitePanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(layoutPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(fixFormsPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(individualFormsPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addContainerGap())
.addComponent(editPanel, GroupLayout.DEFAULT_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
@Override
public void actionPerformed(ActionEvent object)
{
if (object.getSource() == buttonCreateLayout)
{
headerW = Integer.parseInt(headerWidth.getText());
headerH = Integer.parseInt(headerHeight.getText());
contentW = Integer.parseInt(contentWidth.getText());
contentH = Integer.parseInt(contentHeight.getText());
footerW = Integer.parseInt(footerWidth.getText());
footerH = Integer.parseInt(footerHeight.getText());
// paintComponent(editPanel.getGraphics());
repaint();
}
if (object.getSource() == buttonFixForms)
{
tile1W = Integer.parseInt(tile1Width.getText());
tile1H = Integer.parseInt(tile1Height.getText());
tile2W = Integer.parseInt(tile2Width.getText());
tile2H = Integer.parseInt(tile2Height.getText());
tile3W = Integer.parseInt(tile3Width.getText());
tile3H = Integer.parseInt(tile3Height.getText());
repaint();
}
if (object.getSource() == buttonIndividualForms)
{
bausteinW = Integer.parseInt(bausteinWidth.getText());
bausteinH = Integer.parseInt(bausteinHeight.getText());
repaint();
}
}
Das Problem ist das in editPanel nicht anhand von den TextFields-Eingaben gezeichnet wird.. Es passiert nix wenn ich was eingebe und auf paint qausi drücke bleibt editPanel dennoch leer..Wiesonicht?
Zuletzt bearbeitet: