【问题标题】:JavaFx date widgetJavaFx 日期小部件
【发布时间】:2014-03-20 18:32:13
【问题描述】:

所以在我的 javafx 程序中,我需要将日期显示为表单中的标签以及 TableViews 中的单元格。

但是我不希望长日期格式“2014 年 9 月 14 日..”等。我希望它仅显示为“3 天前”“2 分钟前”,或者可能只是 3d 或 2m。让我们称之为经过的格式。

但是,在 TableCell 中创建这样的字符串还不够好,就像 Facebook 和其他页面一样,2m 应该在没有用户干预的情况下每隔一分钟更新 3m。数小时/数天等也是如此。

如果我是从零开始写的话......

我想我必须启动一个线程来连接所有这些小部件并轮询这些小部件(可能使用 Platform.runLater)。

看来我需要我自己的派生标签,因为它需要能够容纳 .setDate(Date)。

理想情况下,如果列和标签都可以通过右键单击在长格式和经过的格式之间切换,那么最重要的是。

在我看来,除了实例化这些小部件之外,用户不需要做任何事情,他们应该在后台自行连接。

但是,这已经足够复杂了,我只想问这样的东西是否已经不存在?还是我想错了。

【问题讨论】:

    标签: javafx javafx-2


    【解决方案1】:

    看看digital clock label answerDisplaying changing values in JavaFx Label中的代码。

    应用类似的概念,但让单元工厂生成您的“时钟标签”。与其让时钟标签报告当前时间,不如让它们报告从实例化开始经过的时间。每个实例化时钟标签中固有的内部动画时间线使它们能够自我更新,因此在触发的关键帧中,您可以将标签设置为您想要的任何内容。

    【讨论】:

    • 查看代码,似乎是使用时间轴机制的更优雅的解决方案。谢谢。
    猜你喜欢
    • 2022-01-26
    • 2015-07-15
    • 2012-11-22
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-22
    相关资源
    最近更新 更多