1
나는 spinnerModel이라는 값을 사용하고 싶지만 이렇게 할 수는 없다. 확실하지 않은 특정 유형으로 선언해야한다고 생각한다. 나중에 프로그램에서 사용하기 때문에 두 번 입력하고 싶습니다. 나는 약자로변경 리스너에서 jspinner의 값을 저장하는 방법
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class UI {
//Need to use the spinnerModel here but cannot :(
private void weightSpinnerMetricStateChanged(ChangeEvent e) {
JSpinner weightSpinnerMetric = (JSpinner) e.getSource();
SpinnerModel spinnerModel = weightSpinnerMetric.getModel();
System.out.println(spinnerModel.getValue());
}
stonesSpinnerImperial = new JSpinner(); //Spinner created here.
stonesSpinnerImperial.setModel(new SpinnerNumberModel(3, 3, 31, 1));
stonesSpinnerImperial.addChangeListener(new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
stonesSpinnerStateChanged(e);
stonesSpinnerImperialStateChanged(e);
}
});
}
(예를 들어, 당신의 스피너 모델에
SpinnerDataModel
로 캐스트 변경) 현재 설정에 맞게 코드를 조정해야합니다 SpinnerNumberModel을 사용하면 숫자가 더 좋을까요? 그렇다면 SpinnerDataModel과 어떻게 다른가? – Banned안녕하세요 로빈, 코드가 수정되었습니다. 제발 도와주세요 :) – Banned
정확히 무슨 문제입니까? 모델을 직접 설정하면'SpinnerNumberModel'에 안전하게 캐스트 할 수 있습니다. – Robin