Java 当我拥有所有Joda DateTime对象时,如何使用SWT日历?
我正在Windows(Eclipse和SWT)上开发javagui。我需要GUI用户输入日期(日历小部件),然后进行日期/时间(来自数据源)操作,包括处理不同的时区 为了更好地处理日期/时间,我选择了Joda,因为我相信这比标准SWT更好。然而,据我所知,Joda不支持自己的日历小部件 有谁能告诉我如何做到这一点,将与SWT和Joda兼容 我认为直接引用:Java 当我拥有所有Joda DateTime对象时,如何使用SWT日历?,java,datetime,widget,swt,jodatime,Java,Datetime,Widget,Swt,Jodatime,我正在Windows(Eclipse和SWT)上开发javagui。我需要GUI用户输入日期(日历小部件),然后进行日期/时间(来自数据源)操作,包括处理不同的时区 为了更好地处理日期/时间,我选择了Joda,因为我相信这比标准SWT更好。然而,据我所知,Joda不支持自己的日历小部件 有谁能告诉我如何做到这一点,将与SWT和Joda兼容 我认为直接引用: private org.joda.time.DateTime jodaDateTime; private swt.DateTime swtD
private org.joda.time.DateTime jodaDateTime;
private swt.DateTime swtDateTime;
是一个选项,但不知道还有什么其他选项。这是一个非常简单的转换,您只需创建实用程序方法,即可从默认SWT小部件转换为默认SWT小部件,例如
public class DateUtils {
public static org.joda.time.DateTime makeJodaFromSWT(
org.eclipse.swt.widgets.DateTime widget) {
return new DateTime(widget.getYear(),
widget.getMonth(),
widget.getDay(),
widget.getHours(),
widget.getMinutes(),
widget.getSeconds());
}
public static void updateSWTwithJoda(
org.eclipse.swt.widgets.DateTime widget,
org.joda.time.DateTime dateTime) {
widget.setYear(dateTime.getYear());
widget.setMonth(dateTime.getMonthOfYear());
widget.setDay(dateTime.getDayOfMonth());
widget.setHours(dateTime.getHourOfDay());
widget.setMinutes(dateTime.getMinuteOfHour());
widget.setSeconds(dateTime.getSecondOfMinute());
}
}
我需要更多地了解您的项目,以提出一个比
公共静态
实用程序方法更“智能”的包装方案,但这应该让您走上正确的轨道。您应该知道,工具或库请求与堆栈溢出无关。然而,提出你的问题并说“帮我解决这个问题”是可以的;如果有人碰巧展示了一个工具,那就有点不同了。请参阅:了解更多信息。对此表示歉意,并感谢durron 597的更正。durron非常感谢。我还没来得及让它工作,但我明白了。@Nigele2别忘了,你可以通过点击投票按钮旁边的空心复选标记来接受这个答案。见: