Mon MO actuel JTextFiled inclure "1234567-001" Je veux seulement "1234567" (7 chiffres) dans un textFiled. Un autre "001" passe au texte suivantFichier automatiquement.Diviser la chaîne Java par New JTextFiled
Veuillez vous reporter à la capture d'écran pour plus de détails.
Ci-dessous voici mon code que j'ai essayé:
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);
un événement où il devrait se diviser? ou juste une fois que le premier champ de texte contient 7 caractères passent au suivant? – XtremeBaumer
@XtremeBaumer .jusqu'à un textField 7 caractères et passer au textField suivant en ignorant "-". – JavaIssues
'txtMoNo.getText(). Equals (" ") && txtMoNo.getText(). Contains (" - ")' Cela ne peut jamais être vrai, si votre texte est égal à "" "' (en d'autres termes, est vide) alors il ne peut pas contenir de '-'. – SWoeste