Guten Abend!
Setze mich momentan mit Layout's auseinander, habe glaube ich jedoch einige Verständnisprobleme. Ich wollte eine eine Oberfläche erstellen mit den Labels "First Name:", "Last Name:", die untereinander stehen sollen und neben diesen entsprechend Textfelder. Das hat geklappt, jedoch wird alles in dem Frame zentriert. Ich hatte es so verstanden, dass gridx für das Vertikale und gridy für das Horizontale steht, und wenn man beides auf 0 setzt ein Objekt ganz oben Links platziert wird. Ist das falsch? Bzw. was müsste ich ändern damit es oben Links platziert wird? Außerdem wird bei mir bei einem Label nichts geändert wenn ich gridx um irgendwas erhöhe. Würde mich wirklich sehr über Hilfe freuen!
Hier der Code:
Setze mich momentan mit Layout's auseinander, habe glaube ich jedoch einige Verständnisprobleme. Ich wollte eine eine Oberfläche erstellen mit den Labels "First Name:", "Last Name:", die untereinander stehen sollen und neben diesen entsprechend Textfelder. Das hat geklappt, jedoch wird alles in dem Frame zentriert. Ich hatte es so verstanden, dass gridx für das Vertikale und gridy für das Horizontale steht, und wenn man beides auf 0 setzt ein Objekt ganz oben Links platziert wird. Ist das falsch? Bzw. was müsste ich ändern damit es oben Links platziert wird? Außerdem wird bei mir bei einem Label nichts geändert wenn ich gridx um irgendwas erhöhe. Würde mich wirklich sehr über Hilfe freuen!
Hier der Code:
Java:
public class GUI {
public static void main(String[] args) {
GridBagConstraints c = new GridBagConstraints();
c.gridx = 0;
c.gridy = 0;
JFrame myFrame = new JFrame();
myFrame.setSize(500,500);
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel meinPanel = new JPanel(new GridBagLayout());
meinPanel.add(new JLabel("First Name: "), c);
c.gridy ++;
meinPanel.add(new JLabel("Last Name: "), c);
c.gridx = 1;
c.gridy = 0;
meinPanel.add(new JTextField(8), c);
c.gridy ++;
meinPanel.add(new JTextField(8),c);
myFrame.add(meinPanel);
myFrame.setVisible(true);
}
}