Я просто создаю простой графический интерфейс для практики. Я хочу иметь несколько текстовых полей в своем JFrame, но созданный мной JTextField занимает весь фрейм. Я пробовал делать .setSize, но это не сработало.Как изменить размер JTextField в JFrame?
JFrame
public static Component textbox(String x){
JLabel lbltAm= new JLabel(x);
JTextField tftAm = new JTextField(20);
lbltAm.setLabelFor(tftAm);
lbltAm.setFont(new Font("Serif", Font.PLAIN, 18));
tftAm.setSize(10, 10);
return tftAm;
}
private static void createAndShowGUI() {
//Create and set up the window.
JFrame frame = new JFrame("Tip Calculator");
//Add Textbox
frame.add(textbox("TipAmmount"));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setBackground(Color.gray);
frame.setPreferredSize(new Dimension(250, 400));
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
Попробуйте создать FlowLayout и поместите JTextField и JLabel внутри макета. и добавьте свой макет в JFrame –
Прохладный, я дам этот снимок. – user3769402
'new Font (« Serif », Font.PLAIN, 18)' лучше всего будет 'new Font (Font.SERIF, Font.PLAIN, 18)' для проверки времени компиляции. –