gpt4 book ai didi

java - 自定义 JSpinner

转载 作者:行者123 更新时间:2023-12-02 00:55:22 25 4
gpt4 key购买 nike

我创建了以下类,它扩展了 JSpinner 以迭代 dd/mm/yyy 值。


public class DateSpinner extends JSpinner{

Calendar calendar = new GregorianCalendar();

public DateSpinner(){
super();

calendar.add(Calendar.DAY_OF_YEAR, 1);
Date now = calendar.getTime();

calendar.add(Calendar.DAY_OF_YEAR, -2);
Date startDate = calendar.getTime();

calendar.add(Calendar.YEAR, 100);
Date endDate = calendar.getTime();

SpinnerDateModel dateModel = new SpinnerDateModel
( now , startDate , endDate , Calendar.DAY_OF_MONTH );

setModel(dateModel);

JFormattedTextField tf =
((JSpinner.DefaultEditor)getEditor()).getTextField();
DefaultFormatterFactory factory =
(DefaultFormatterFactory)tf.getFormatterFactory();
DateFormatter formatter = (DateFormatter)factory.getDefaultFormatter();

// Change the date format to only show the hours
formatter.setFormat(new SimpleDateFormat("dd/MM/yyyy"));
}




}

我的问题是当我使用

设置其值时
    Date today = new Date();
spinner.setValue(today);

我得到的日期包括时间和星期几。如果我触摸微调器,它会根据我设置的格式对其进行格式化。我怎样才能最初获得我想要显示的格式?

最佳答案

使用内置编辑器,例如以下

spinner.setEditor(new JSpinner.DateEditor(spinner, "dd/MM/yyyy"));

关于java - 自定义 JSpinner,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/993092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com