为了账号安全,请及时绑定邮箱和手机立即绑定

JFormattedTextField:输入持续时间值

JFormattedTextField:输入持续时间值

潇湘沐 2019-11-04 10:43:45
我想使用JFormattedTextField允许用户将持续时间值输入表单。有效值示例为:2h 30m72h 15m6h0h但是,我在此方面取得的成功有限。有人可以建议如何实现吗?如果可以使用a也可以达到此结果,我JTextField很好。谢谢!如果值钱,这是我目前的尝试: mFormattedText.setFormatterFactory(    new DefaultFormatterFactory(        new DateFormatter(            new SimpleDateFormat("H mm"))));这种排序有效,除了:我无法获取h并m显示为纯文本(我尝试进行转义) *小时数已达到最大值
查看完整描述

3 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

编码:


public static void main(String[] args) {

    JFrame jFrame = new JFrame();

    jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    jFrame.setLayout(new BorderLayout());

    jFrame.setPreferredSize(new Dimension(500, 500));


    final JFormattedTextField comp = new JFormattedTextField();

    comp.setFormatterFactory(new DefaultFormatterFactory(new DateFormatter(new SimpleDateFormat(

            "H'h' mm'm'"))));

    comp.setValue(Calendar.getInstance().getTime());


    comp.addPropertyChangeListener("value", new PropertyChangeListener() {


        @Override public void propertyChange(PropertyChangeEvent evt) {

            System.out.println(comp.getValue());


        }

    });


    jFrame.getContentPane().add(comp, BorderLayout.CENTER);


    jFrame.pack();

    jFrame.setVisible(true);

}


查看完整回答
反对 回复 2019-11-04
  • 3 回答
  • 0 关注
  • 434 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信