我正在评估是否使用SmartGWT,并且之前没有使用它。我在Calendar小部件上有一个特定的问题。
当您前往航空公司/汽车租赁网站,并且您需要指定当月的日期进行预订时,会弹出一个月日历,客户用户可以点击前一个月/上个月来选择月份。然后,客户 - 用户从日历中选择该月的那一天。
在vaadin中,您可以约束日历小部件来执行此操作。
有没有办法在SmargGWT中定义日历小部件的行为和约束来做到这一点?
答案 0 :(得分:2)
我认为你正在寻找smartgwt DateChooser。我在我的申请中使用了这个类似的案例。
http://www.smartclient.com/smartgwt/javadoc/com/smartgwt/client/widgets/DateChooser.html
答案 1 :(得分:1)
有很多方法,比如setDisableWeekends(Boolean disableWeekends) - 无法在周末创建事件,setTimelineRange(日期开始,日期结束) - 设置时间轴显示事件的范围,setWorkdayStart(String workdayStart)。
javadoc显示了自定义程度。
在最糟糕的情况下,如果Calendar类没有一些非常具体的功能,您可以始终将其子类化。
如果您需要最有可能必须在CSS中进行视觉更改。我用firebug检查了生成的HTML,这可能很乏味,但是100%可以用CSS改变元素的大小,而!important属性可以覆盖内联样式。
答案 2 :(得分:1)
Smartgwt用户界面不会令人印象深刻。受到大量光滑外观小部件的诱惑,我忍不住在许多项目中使用它。有许多事项需要注意:
Smartgwt是一个基本的Javascript库的GWT包装器。您很快就会意识到,要自定义或更改窗口小部件,或修复问题,您最终将离开Java并全神贯注于Javascript。你没有采用GWT框架,你采用了一个非平凡的Javascript框架。如果您查看日历展示示例,您很快就会意识到GWT中的自定义选项是有限的。
随着时间的推移,遇到了许多严重的跨浏览器问题,主要是在不太广泛使用的浏览器(Safari,Chrome)中。但是,这些使用不太广泛的浏览器正在取得进展......
小部件及其数据源紧密集成,Javascript引人注目。用于从SOAP服务器资源驱动小部件的数据协议在我采用的版本之间破坏了两次。并且,您将最终尝试针对最新的跨浏览器错误修复的新版本...通常,您将需要最新的快照。在这两种情况下,我都能解决问题,但它涉及到挖掘Javascript框架。
根据我的经验,采用smartgwt已经证明是相当高的维护。对于某些应用程序,您可能最好拒绝使用glitzy小部件并使用大多数GWT开发更简单的用户界面。
尽管如此,smartgwt和smartclient都得到了很好的支持。开发人员论坛非常活跃且有用,问题可以快速解决。