その JFormattedTextField でフォーカスが失われると、テキストは消えます。理由はわかりません...誰かが私のエラーに気付くことを願っています。そして、メソッドclassdurationが終了しないか、呼び出されないようです...例外は発生しませんが。これは私にとって非常に奇妙です。
classdurationField = new JFormattedTextField(createFormatter("###"));
classdurationField.addFocusListener(new FocusAdapter() {
@Override
public void focusLost(FocusEvent e) {
if(classdurationField.getText() != null & !classdurationField.getText().equals(" "))
{
classduration();
if(firstopening) checkifallinserted();
}
}
});
classdurationField.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
if(e.getKeyCode() == KeyEvent.VK_ENTER)
{
if(classdurationField.getText() != null & !classdurationField.getText().equals(" "))
{
classduration();
if(firstopening) checkifallinserted();
}
}
}
});
panel.add(classdurationField, "cell 2 9,growx");
classdurationField.setColumns(10);
およびクラスデュラリオン:
public void classduration()
{
try {
String temp = classdurationField.getText();
temp = temp.trim();
fkSchedule.changeclassduration(Integer.parseInt(temp));
} catch (Exception e) {
JOptionPane.showMessageDialog(this, e.getMessage());
}
}
//編集: フォーマットされたテキストフィールドが表示され、表示されます。テキストだけが消えます
コード全体を投稿する必要があります (その多くは....)??