如何检查标签是否为空并清洁?
答案 0 :(得分:1)
代码:
JFrame f = new JFrame("Demo");
f.setLayout(new FlowLayout());
f.setSize(300, 200);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//put the frame at the center of your monitor
f.setLocationRelativeTo(null);
JTextField userText = new JTextField(6);
JLabel label = new JLabel();
JButton button = new JButton("OK");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent ae) {
if (label.getText().isEmpty()) {
label.setText(userText.getText());
}
}
});
f.add(userText);
f.add(button);
f.add(label);
f.setVisible(true);
}
addActionListener
中的 Java 8
是
button.addActionListener((ActionEvent ae) -> {
if (label.getText().isEmpty()) {
label.setText(userText.getText());
}
});
<强>解释强>
你检查标签是否包含任何字符串,所以如果它是空的,这意味着它是第一次,你还没有在其中设置任何文本。如果它不是空的,你已经在标签内有任何文字,因此您不能再在标签内输入任何文本,因为无法满足if语句并且标签不会被编辑。
答案 1 :(得分:1)
这个解决方案很好,因为它很简单。创建一个空白文本标签然后在稍后设置它是没用的,因为它看起来与创建和设置它同时完全相同。如果你的actionPerformed()。
,请在里面添加final JLabel label = new JLabel(textFieldVariable.getText());
//Attributes for label here