0
Я пытаюсь создать основной экран входа, но когда я его запустил, текстовое поле огромно и увеличивается, когда я максимизирую окно. Как мне заставить его оставаться с фиксированным размером?BoxLayout и JTextField не работают так, как мне это нужно
public class LoginScreen {
LoginScreen()
{
JFrame frame = new JFrame();
Box b = Box.createVerticalBox();
JLabel title = new JLabel("Welcome to login screen");
b.add(title);
title.setAlignmentX(JFrame.CENTER_ALIGNMENT);
title.setFont(title.getFont().deriveFont(20.0f));
title.setBorder(new EmptyBorder(20,10,20,10));
Box c = Box.createHorizontalBox();
JLabel login = new JLabel("Login Id");
login.setAlignmentX(JFrame.CENTER_ALIGNMENT);
JTextField loginf = new JTextField("");
loginf.setAlignmentX(JFrame.CENTER_ALIGNMENT);
c.add(login);
c.add(loginf);
b.add(c);
frame.add(b);
frame.setSize(450,350);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new LoginScreen();
}
});
}
}
Если вы не используете Box и для JTextField используйте setBounds (x, y, width, height) – Mailkov
Я пробовал делать это для JTextField, но он не работает. Кроме того, мне нужна коробка для форматирования, поскольку JLabel и JTextField должны быть в прямой линии. –