如何设置GUI日期输入以保留格式外观

时间:2012-03-14 14:18:38

标签: swing user-interface spinner simpledateformat jformattedtextfield

好吧,我已经尝试了几种不同的方式,并且无法让它按照我的意愿去做。我也访问了此页面:http://www.exampledepot.com/egs/javax.swing.text/formtext_FormTextDate.html

我有一个微调器:

SimpleDateFormat datePattern = new SimpleDateFormat("MM/dd/yyyy");
JLabel endLabel = new JLabel("End Date: ");
        JSpinner endSpinner = new JSpinner(new SpinnerDateModel());         
        endSpinner.setEditor(new JSpinner.DateEditor(endSpinner, datePattern.toPattern()));

这会自动加载今天的日期。我希望它能在实际的gui中显示MM / DD / YYYY。如果不需要,这将使其具有输入日期的外观,而无需输入特定日期。然后,一旦你开始旋转它将需要一个日期。我似乎无法弄清楚如何做到这一点。有什么建议?我也开始查找FormattedTextFields以及一个选项。这会是一条更好的路吗?

如果是这样,我如何将FormattedTextField设置为如下所示:[/ /]。然后当您输入时,保留该格式,仅需要数字和2位数字表示月份,2位数字表示日期,4位数字表示年份。我会假设我必须设置某种模式,而不是将FormattedTextField初始化为日期?例如:

JFormattedTextField date = new JFormattedTextField(new SimpleDateFormat("MM/dd/yyyy"));
date.setValue("  /  /    ");

但你所要做的就是清除这个领域,它不再像一个约会。无论你做什么,我都希望它至少保留'/'。

很抱歉这个问题很长。

0 个答案:

没有答案