Ich habe alle Probleme wie diese gesucht, aber ich konnte die Lösung nicht finden.java unvernünftig jtextfield Sizing Problem
public class FormPanel extends JPanel
{
private JLabel namelabel;
private JLabel occlabel;
private JTextField nametext;
private JTextField occtext;
private JButton okButton;
public FormPanel() {
Dimension dim = getPreferredSize();
dim.width = 250;
setPreferredSize(dim);
namelabel = new JLabel("Name : ");
occlabel = new JLabel("Occupation : ");
nametext = new JTextField();
nametext.setPreferredSize(new Dimension(80,20));
occtext = new JTextField();
occtext.setColumns(20);
okButton = new JButton("OK");
Border inner = BorderFactory.createTitledBorder("Add Person : ");
Border outer = BorderFactory.createEmptyBorder(5,5,5,5);
setBorder(BorderFactory.createCompoundBorder(inner,outer));
setLayout(new GridBagLayout());
GridBagConstraints gc = new GridBagConstraints();
gc.gridx = 0;
gc.gridy = 0;
gc.weightx = 1;
gc.weighty = 1;
gc.fill = GridBagConstraints.NONE;
add(namelabel,gc);
gc.gridx = 1;
gc.gridy = 0;
add(nametext,gc);
gc.gridy = 1;
gc.gridx = 0;
add(occlabel,gc);
gc.gridy = 1;
gc.gridx = 1;
add(occtext,gc);
gc.gridy = 2;
gc.gridx = 1;
add(okButton,gc);
}
}
nametext
und occtext
sind extrem klein. Ich habe versucht, neue JTextField (20), und String-Version, Ich versuchte SetPreferredSize wie oben Klasse, und auch ich versuchte SetColumn aber keiner von ihnen funktioniert.
wow, es hat ganz gut funktioniert, danke für Ihre Aufmerksamkeit. –
@VivianMaya: Ich bin froh, dass es geholfen hat. Um dies in Aktion zu sehen, skaliere einfach deine GUI mit dem JPanel oben mit der Maus und beobachte, wie deine JTextFields schrumpfen, aber dann bei einer kritischen Größe sehr klein und unbrauchbar werden. –