【问题标题】:How to pop-up error in java swing to check whether the check-in date in hotel should be earlier than check-out date?java swing中如何弹出错误来检查酒店的入住日期是否应该早于退房日期?
【发布时间】:2017-10-05 09:31:25
【问题描述】:

我有以下来自 jswing 应用程序的屏幕截图。

在这里,我已经写了从日期选择器中选择日期 -

//CheckIn Date
JDateChooser dateChooser = new JDateChooser();
dateChooser.setBounds(177, 136, 149, 22);
frame.getContentPane().add(dateChooser);

//CheckOut Date
JDateChooser dateChooser_1 = new JDateChooser();
dateChooser_1.setBounds(177, 136, 149, 22);
frame.getContentPane().add(dateChooser_1);

现在,如何编写逻辑以选择早于退房日期的入住日期?如果入住日期晚于退房日期,则会弹出错误提示“入住日期应早于退房日期”

我使用了动作监听器,但我无法复制。

【问题讨论】:

  • 检查here提供的答案。这是你需要的东西吗?
  • 另外,要检查签入日期是否在签出日期之后,您可以试试这个:if(checkInDate.after(checkOutDate)) { // Do your Stuff. }
  • 您“可以”做几件事 - 您可以在填写签入字段之前使签出字段不可编辑,此时您可以将日期选择器限制为签入后的日期日期

标签: java swing date datepicker


【解决方案1】:

现在,如何编写选择早于退房日期的入住日期的逻辑?

首先看一下JavaDocs for java.util.Date,你会发现它有很多方便的方法,特别是beforeafter。从这里您可以根据您的需要构建一个简单的逻辑检查

如果入住日期晚于退房日期,则会弹出错误提示“入住日期应早于退房日期”

最常用的方法是使用JOptionPane,更多详情请查看How to make dialogs

【讨论】:

    【解决方案2】:

    你需要给 dateChooser_1 添加一个 ActionListener

    阅读本教程中的 ActionListeners:

    https://docs.oracle.com/javase/tutorial/uiswing/events/actionlistener.html

    【讨论】:

    • 我用过这个,但我无法复制,因为变量 dateChooser 和 dataChooser_1 属于不同的函数。所以,我得到错误。如何将它们结合在一起并使用它们。假设我有 String 格式的日期,例如 String date1 = "date 1" 和 String date2 = "date 2",我会比较并编写代码。
    • 让它们成为一个字段
    • 这是可能的,但我想使用 DatePicker jar 文件来生成日期。无论如何我们可以做到吗?
    • 继续阅读您的书籍先生,您需要先了解一些基础知识
    • @aanshu 如果你的日期值是Strings,那么你做错了什么,需要认真重新考虑你的方法。您应该将所有值转换为适当的类型值,这意味着使用Date,或者最好使用LocalDate
    猜你喜欢
    • 2020-12-17
    • 2018-04-05
    • 2015-01-04
    • 2023-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多