私のプログラムでは、数値に JSpinner を使用したいと考えています。この数値は、後で何かを計算するために使用されます。ユーザーがスピナー ボタンの 1 つ (上または下) をクリックするたびに、結果が自動的に更新されるようにします。ActionListener を JSpinner に追加することはできないので (これは本当に奇妙だと思います)、これと同様のことを行う方法をここで尋ねています (既に ActionListener の準備ができており、他のリスナーで変更できます)。コース)。
質問する
7364 次
2 に答える
10
ChangeListener
をスピナーに追加できます。これは、ボタンの押下 (またはフィールドの直接編集) によってトリガーされます。
spinner.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
// handle click
}
});
于 2013-04-26T19:41:03.293 に答える
3
ユーザーがスピナー ボタン (上または下) のいずれかをクリックするたびに、結果が自動的に更新されるようにします。
スピナーのエディターとして使用されているテキスト フィールドの に を追加しDocumentListener
ます。Document
編集:
JSpinner.DefaultEditor editor = (JSpinner.DefaultEditor)number.getEditor();
JTextField textField = editor.getTextField();
textField.getDocument().addDocumentListener( new DocumentListener()
{
public void insertUpdate(DocumentEvent e)
{
System.out.println("insert");
}
public void removeUpdate(DocumentEvent e)
{
System.out.println("remove");
}
public void changedUpdate(DocumentEvent e) {}
});
于 2013-04-26T19:33:08.027 に答える