0
내 현재 MO 번호 JTextFiled는 "1234567-001"을 포함합니다. 하나의 textFiled에만 "1234567"(7 자리) 만 입력하고 싶습니다. 또 다른 "001"은 자동으로 다음 textFiled로갑니다.새 JTextFiled로 자바 문자열 나누기
자세한 내용은 스크린 샷을 참조하십시오. 난 단지 2 JTextField
년대와 간단한 테스트 클래스를 작성했습니다
txtMoNo = new JTextField();
//set limit 7 key
//txtMoNo.setDocument(new JTextFieldLimit(7));
txtMoNo.addFocusListener(new FocusAdapter() {
@Override
public void focusLost(FocusEvent arg0) {
//if (txtMoNo.getText().equals("")) {
if (txtMoNo.getText().equals("") && txtMoNo.getText().contains("-")) {
String MoNo = txtMoNo.getText();
String[] output = MoNo.split("-");
//String[] textMoNo = MoNo.split("\\r?\\n");
//String output = txtMoNo.getText();
//String[] splittext = output.split("-");
System.out.println("output split: " +output);
//String lines[] = string.split("\\r?\\n");
txtMoNo.setText("");
txtItemNo.setText("");
txtItemNo.setText("");
txtCustomerPartNo.setText("");
txtCustomerName.setText("");
//txtPcsBag.setModel(new PcsBagData(new String[]{""}));
//txtPcsBag.setVisibleRowCount(1);
//txtBagSize.setText("");
//txtPcsCarton.setText("");
//txtCartonSize.setText("");
tablePacks.setModel(new PackingSpecNoData("", ""));
txtPackingDate.setText("");
} else {
SwingWorker<?, ?> job = new UIQuery();
job.execute();
}
}
});
panel.add(txtMoNo, "cell 1 1,growx");
txtMoNo.setColumns(10);
어떤 이벤트가 분할되어야합니까? 또는 첫 번째 텍스트 필드가 7자를 보유하면 바로 다음 문자로 이동합니까? – XtremeBaumer
@XtremeBaumer. 하나의 textField 문자 만 변경하고 "-"를 무시하여 다음 textField로 자동 이동하십시오. – JavaIssues
'txtMoNo.getText(). equals ("") && txtMoNo.getText(). contains ("-")'텍스트가''''(비어있는 경우)이면 true가 될 수 없다. '-'를 포함 할 수 없습니다. – SWoeste