时间间隔选择的最佳界面范例?

时间:2010-09-09 01:45:11

标签: python user-interface forms wxpython

我正在开展一个小项目,包括选择时间间隔,然后将它们用于我的恶意目的(这基本上归结为让机器人的声音对我大喊大叫)。但是,我无法决定选择这些间隔的适当范例。所需数据如下:

Action (Text)
Starting At (Time, can be minutes/seconds)
Interval (Time, can be minutes/seconds)

我能够提出的最佳界面是:

Action: [_____________________] | Starting At [__][__] | Interval [__][__]

在上面的示例中,小[__]区域代表spinners。任何人都可以想到更标准,更一致的界面设计吗?

3 个答案:

答案 0 :(得分:3)

我不是GUI专家,但是,就个人而言,我喜欢界面,它给我三种方式来选择一个间隔:“从”开始,“结束于”,“持续时间”。当然,当我提前(说)持续时间时,让“结束于”前进一致是至关重要的(我发现当其中任何一个被改变时,“开始时”间隔固定更为直观,并且持续时间固定 - 以及“结束于”改变 - 当“开始于”是正在改变的那个 - 但是,我无法用语言为什么我发现直觉...我猜测这是我的一部分“是一名GUI专家”,只是一个知道我喜欢和不喜欢的用户; - )。

答案 1 :(得分:3)

Outlook在约会创建者中选择间隔时具有相当不错的范例。

答案 2 :(得分:3)

我的想法:

对于文字输入,请使用 Miniparser ,它会接受1:30等输入,这对高级用户来说效果更好。根据我观看用户的有限经验,当他们看到样本(例如初始选择)时,这并不难学习,并且当他们被卡住时有另一种机制来帮助他们(例如,一个旋转器持续几分钟,一秒钟)。

尝试两种定位的外观和可用性:

[spin-minute] [edit] [spin-second]
[edit] [spin-minute] [spin-second]

高级Miniparser 可能允许使用范围编辑器并允许不同的格式,例如

1.30 - 2.15    (starts at 1.30, runs for 45 seconds, '-' for range)
1.30 +45       (the same, '+' for start and duration)
90 + 0.45      (the same, time in seconds)

我不知道如何在这里放置微调器。


理想情况下,您有一个可视化编辑器,可以显示项目之间的关系:

[Action 1]             [.....>----<.......................]
[Action 2]             [..........>---------<.............]

范围选择器可以是like this

拖动其中一个范围“边界”应该在所有滑块上显示一个垂直标记(例如虚线),以便您可以看到它们之间的关系。

您可能希望机芯“捕捉”到其他标记,以便它们可以轻松链接。

实施捕捉时,这是我的期望:     - 使其成为一个选择     - 有一种方法可以动态禁用它(例如通过按住班次)     - 当反复按下和释放移位时,它应该在捕捉和浮动位置之间跳跃(即你必须分别跟踪这些)