我需要让最终用户指定一个时间范围,作为开始日期/时间和结束日期/时间在内部存储和使用.范围可能是几分钟,也可能是几天.
有没有人发现一个可以优雅地处理这个问题的交互式控件?
大多数GUI工具包都有日历控件,因此我可以指定"开始",其中包含当天的日历和时间的文本字段......以及"结束"的相同内容.
我还可以使用单个文本字段或滑块替换"结束"控件,该文本字段或滑块简单地描述了"结束"开始后的秒数/分钟/小时数.
我不喜欢这些想法是需要多少点击,打字和更多点击来描述这样一个简单的概念.如果输入的时间不能被识别为时间,我也必须拍打用户的手.
我有一个更清洁的实现吗?
我倾向于看常用的设计模式的灵感,当我思考问题,比如这一点.
在雅虎模式库提供了一些可能的解决方案.
在UI模式的网站也给一些建议,值得一浏览.
为了更好地衡量,这是Welie模式库中的另一个解决方案.
另一个灵感来源可能是其他网站和应用程序.例如,考虑所有需要记录短时间和长时间持续时间的用例.例如,公司TimeSheet记录,公司汽车里程记录软件,任务记录软件,秒表应用程序,日历应用程序等.然后看看他们如何处理用于捕获时间范围的GUI控件.
我个人没有找到最喜欢的选择日期和时间的解决方案.但是,我想我想要这样的东西.
用户单击以显示日历弹出窗口
弹出窗口显示2个并排日历(开始日期/时间和结束日期/时间)
日历1显示今天的日期,另一个显示今天的日期.
日历控件允许通常导航和选择日期年份.
每个日历下方都是一个hh:mm框,默认为当前时间.
用户可以使用上/下箭头或键入来编辑此时间框中的值.
或者,在每个日历下方显示模拟时钟.需要2次鼠标点击才能设置时间(单击1表示小时,单击2表示分钟).
希望这可以帮助