你为什么不在前面加一个小JLabel
呢JTextField
?可以包含数字,并且因为它不可编辑,JLabel
所以无论用户在JTextField
. 您还可以通过调用 格式化JLabel
以使其变为红色setForeground(Color.RED);
。这可能是一个更简单的解决方案?
例如,而不是这样做......
JPanel panel = new JPanel(new BorderLayout());
JTextField textfield = new JTextField("Hello");
panel.add(textfield,BorderLayout.CENTER);
你可能会做这样的事情......
JPanel panel = new JPanel(new BorderLayout());
JTextField textfield = new JTextField("Hello");
panel.add(textfield,BorderLayout.CENTER);
JLabel label = new JLabel("1.");
label.setForeground(Color.RED);
panel.add(label,BorderLayout.WEST);
JLabel
这在 的左侧添加了一个红色JTextField
,并且因为您使用BorderLayout
的是,JPanel
所以它会自动使其JLabel
尽可能小。