Java 如何在Jspinner中使用常规字符串?

Java 如何在Jspinner中使用常规字符串?,java,swing,jspinner,Java,Swing,Jspinner,在JSpinner中显示月份时,我遇到了JSpinner的问题,我遵循下面的代码。我使用带有jframe表单的swing控件来使用spinner控件。当我运行project时,它总是将默认值设置为0。如何解决这个错误 static protected String[] getMonthStrings(){ String[] months=new DateFormatSymbols().getMonths(); int lastIndex=months.lengt

在JSpinner中显示月份时,我遇到了JSpinner的问题,我遵循下面的代码。我使用带有jframe表单的swing控件来使用spinner控件。当我运行project时,它总是将默认值设置为0。如何解决这个错误

 static protected String[] getMonthStrings(){
        String[] months=new DateFormatSymbols().getMonths();
        int lastIndex=months.length-1;
        if(months[lastIndex]==null || months[lastIndex].length()<=0){
            String[] mS=new String[lastIndex];
            System.arraycopy(months,0,mS, lastIndex,0);
            return mS;
        }
        else{
            return months;
        }
    }
    public spinner(boolean CycleMonths) {

        initComponents();
        JTextField tf=null;
        String[] monthStrings = getMonthStrings();
         SpinnerListModel monthModel=null;
         if(CycleMonths){
             monthModel=new CycleSpinnerList(monthStrings);
         }
         else {
             monthModel=new SpinnerListModel(monthStrings);
         }
         spMonth=new JSpinner(monthModel);
    }

在构造函数代码中,您调用initComponents,然后创建SpinnerListModel,创建一个新的JSpinner,但从不在任何地方添加它。。。所以看起来问题在于,您只是没有在任何地方添加JSpinner

    public spinner(boolean CycleMonths) {

        initComponents();
        JTextField tf=null;
        String[] monthStrings = getMonthStrings();
         SpinnerListModel monthModel=null;
         if(CycleMonths){
             monthModel=new CycleSpinnerList(monthStrings);
         }
         else {
             monthModel=new SpinnerListModel(monthStrings);
         }
         spMonth=new JSpinner(monthModel);

    }

当我运行project时,它总是将默认值设置为0-我不明白你的意思。你的意思是1 JSpinner显示1月份的索引0,而你不希望这样吗?还是说JSpinner只显示一个零?或者JSpinner没有显示任何内容?请发表一篇文章,这样问题就更清楚了,实际上对我们来说是可以运行的。也看看哦!是的,jspinner只显示一个零。但是spMonth是jspinner,先生。spMonth只是类中的一个字段,您已经设置为指向jspinner。但是你还没有把这个添加到你的吉他上谢谢你的回复。