어떻게 텍스트를 삭제합니까 내가 좋아하는 텍스트가 아닌하지만 슬래시를 삭제하려면? setText("")
을 사용하고 있습니까? 너는 그렇게해서는 안된다. 대신 setValue(null)
을 사용하십시오. 이것이 문제가되지 않는다면, 현재하고있는 일과 그 대신에 일어나고있는 일에 대해 자세히 설명하십시오.
편집 :이 코드를 시험해보고 문제가 지속되는지 확인하십시오.
public class Tester {
public static void main(String[] args) {
DateFormat df = new SimpleDateFormat("dd/mm/yyyy");
JFrame frame = new JFrame("");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
frame.setLayout(new BorderLayout());
JFormattedTextField tf = new JFormattedTextField(df);
tf.setFocusLostBehavior(JFormattedTextField.COMMIT);
tf.setColumns(20);
panel.add(tf);
try {
MaskFormatter dateMask = new MaskFormatter("##-##-####");
dateMask.install(tf);
} catch (ParseException ex) {
}
frame.add(new JButton(), BorderLayout.LINE_START);
frame.add(panel, BorderLayout.LINE_END);
frame.pack();
frame.setVisible(true);
}
}´
EDIT2 : 시도 tf.setFocusLostBehavior (JFormattedTextField.COMMIT)를 추가; 자세한 내용은 JavDoc을 참조하십시오.
키보드를 사용하여 삭제 – DrkDeveloper
시도해 보면이 예제가 작동합니다. '-' 문자는 그대로 유지됩니다. 통상, JFormattedTextField는이 방법으로 동작합니다. 무효 인 텍스트를 지정하면 (자), 이런 식으로 중단됩니다. 모든 코드를 게시 할 수 있습니까? –
이것은 모두 내 코드입니다 – DrkDeveloper