添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
强悍的茄子  ·  Palette | ...·  6 天前    · 
慷慨大方的钥匙扣  ·  JAVA ...·  6 天前    · 
强健的汤圆  ·  PostgreSQL: Re: SSL ...·  3 月前    · 
独立的柚子  ·  Importing & ...·  4 月前    · 
体贴的可乐  ·  read_kafka 表值函数 - ...·  6 月前    · 
坚强的伤疤  ·  python xlwings ...·  9 月前    · 

JSpinner组件组合来自JFormattedTextField和可编辑的JComboBox的函数。

JSpinner可以有一个选择列表,同时,我们也可以应用一个格式到显示的值。

它从选择列表中一次只显示一个值,它允许我们输入一个新值。

JSpinner中的选择列表必须是有序列表。

JSpinner根据其型号提供纺纱能力。

我们必须在JSpinner的构造函数中提供一个模型,除非我们只需要一个带有整数列表的JSpinner。

JSpinner支持三种有序的选择列表。

  • a list of numbers
  • a list of dates
  • a list of any other objects
  • 它提供了三个类来创建三种不同类型的列表的模型:

  • SpinnerNumberModel
  • SpinnerDateModel
  • SpinnerListModel
  • Spinner模型是SpinnerModel接口的一个实例。它定义了getValue(),setValue(),getPreviousValue()和getNextValue()方法来处理JSpinner中的值。

    SpinnerNumberModel类可以旋转一个有序的数字列表。我们需要在列表中指定最小值,最大值和当前值。我们还可以指定当我们使用JSpinner的向上/向下按钮时用于遍历数字列表的步长值。

    以下代码创建一个JSpinner,其中包含1到10之间的数字列表。它让我们以1为步长旋转列表。字段的当前值设置为5。

    int minValue  = 1;
    int maxValue = 10;
    int currentValue = 5;
    int steps = 1;
    SpinnerNumberModel  nModel = new SpinnerNumberModel(currentValue, minValue,   maxValue,  steps); 
    JSpinner  numberSpinner = new JSpinner(nModel);
    

    SpinnerDateModel类提供了一个模型来旋转日期的有序列表。

    我们需要指定开始日期,结束日期,当前值和步骤。

    以下代码创建一个JSpinner,用于旋转2000年1月1日至2050年12月31日的日期列表,每次一天。

    将当前系统日期设置为字段的当前值。

    Calendar calendar  = Calendar.getInstance();
    calendar.set(2000, 1, 1);
    Date  minValue  = calendar.getTime();
    calendar.set(2050, 12,   31);
    Date  maxValue = calendar.getTime(); 
    Date  currentValue = new Date();
    int steps = Calendar.DAY_OF_MONTH;  // Must be  a  Calendar field
    SpinnerDateModel dModel = new SpinnerDateModel(currentValue, minValue,   maxValue,  steps);
    dateSpinner = new JSpinner(dModel);
    

    JSpinner中的日期值将以默认语言环境格式显示。

    SpinnerListModel类允许我们旋转任何对象的有序列表。

    SpinnerListModel类允许我们旋转任何对象的有序列表。...

    对象的toString()方法的String值显示在JSpinner中。

    以下代码段创建一个JSpinner,显示四个季节的列表:

    String[]  seasons = new String[]  {"Spring", "Summer",  "Fall", "Winter"}; 
    SpinnerListModel sModel  = new SpinnerListModel(seasons);
    listSpinner = new JSpinner(sModel);
    

    JSpinner使用编辑器对象显示当前值。 它有以下三个静态内部类来显示三种不同类型的有序列表:

  • JSpinner.NumberEditor
  • JSpinner.DateEditor
  • JSpinner.ListEditor
  • 要以特定格式显示数字或日期,我们需要为JSpinner设置一个新的编辑器。

    数字和日期编辑器的编辑器类允许我们指定格式。

    以下代码将数字格式设置为“00"。

    JSpinner.NumberEditor Editor = new JSpinner.NumberEditor(numberSpinner,“00");numberSpinner.set Editor(Editor);

    以下代码将日期格式设置为mm / dd / yyyy

    JSpinner.DateEditor dEditor = new JSpinner.DateEditor(dateSpinner,  "mm/dd/yyyy");
    dateSpinner.setEditor(dEditor);
    

    我们可以使用JSpinner或SpinnerModel定义的getValue()方法来获取JSpinner中的当前值作为对象。

    SpinnerNumberModel和SpinnerDateModel定义了getNumber()和getDate()方法,分别返回Number和Date对象。