为WinForm应用程序设计主窗体(“主菜单”)

时间:2009-06-01 18:18:54

标签: winforms user-interface menu

当我们的Beta WinForm应用程序启动时,当前加载的表单显示了大量按钮......“库存”,“客户”,“报告”等。没有什么太令人兴奋。

我通常会通过查看类似的软件产品来了解它们是如何完成的,但由于这是一个企业应用程序,我真的无法下载其他公司应用程序。

我很乐意给这个表格一些润色,但我不确定从哪里开始。有什么建议吗?

编辑:我正在尝试提供多种选项来呈现给用户,但是,我也在绘制空白。我可以在网上找到大量的设计思路,但对于Windows表单设计来说似乎并不多。

9 个答案:

答案 0 :(得分:2)

我发现如果没有选择,用户将很难说出他们想要的内容。一旦给出选项,他们通常更容易找到要改变的东西。我建议为您的应用程序制作一些潜在用户界面的纸质草图。然后与几个用户坐下来讨论他们。我想你会从用户那里获得更具体的想法。


<强> 更新

可能(或可能不)帮助你挺身而出的几个想法:

  • 不要太忙于申请“公司”。我见过的许多合作应用程序看起来都很无聊,我觉得很抱歉那些需要看到它们在当天很有用的用户。
  • 看看你自己喜欢的用户界面并问自己为什么你喜欢它们。
  • 虽然没有陷入“公司模板”,但也不要太有创意;用户收集的经验来自其他应用程序,如果他们能够在没有培训的情况下猜测事情是如何工作的,那可能会很好。
  • 不要忘记从您觉得有吸引力且易于使用的网站中获取灵感。
  • 尝试找到合乎逻辑的“流程”;以一致的方式可视化具有相同概念功能的事物;这也有助于用户成功“猜测”。

答案 1 :(得分:1)

您可能会查看用户熟悉的其他应用程序。 Outlook在我的公司中无处不在,我们能够相对轻松地将我们的应用程序映射到其界面,因此我们在开发UI时将该应用程序用作模型。

请注意,我并不是专门向您推荐Outlook,只是为了寻找可以使用户的学习曲线变浅的用户界面。

答案 2 :(得分:1)

这里的问题是你需要一些好的用户分析,我猜你只做了功能分析。

因为你的问题是如此抽象,所以很难给出一个你需要做的好例子。我会去usability.gov查看可用性方法链接,特别是卡片排序和上下文访谈。

基本上你想做两件事:

1-了解用户认为信息在页面上的分组方式:这也有助于充实您的功能需求。一旦你获得所有分组的信息,你基本上已经设置了导航隐喻。此外,您可以持续进行卡片分类练习,直到页面和功能级别 - 例如你做一个卡片分类会议来了解用户需求,然后你拿一组卡片,并要求用户将其分解为重要的等级。这样做可以帮助您了解屏幕主导区域需要处理的内容以及可以隐藏的内容。

2-了解他们已经使用过的工具:他们做什么和不喜欢什么。您需要获取他们在外部和内部使用的工具/应用程序列表。内部可能是最重要的,因为您的企业中的大多数人都有可能分享使用它的经验。但是,外部工具可能会帮助您了解用户的想法。

此外,不要害怕拿铅笔和纸张,并与用户勾勒出想法。人们普遍认为草图是一种快速而有用的方法,可以帮助我们进行早期的设计工作,只需简单的草图就可以从中获取大量的信息。是的,即使这样做,如果你撇去草图 - 可能无关紧要。事实上,蹩脚的草图甚至可以对你有利,因为如果按钮应该是蓝色,红色或其他什么,没有人会争辩。

答案 3 :(得分:1)

坦率地说,一个带有“大量按钮”的表单需要更多的润色。专门用于导航的表单通常意味着您为用户提供了不必要的工作。在每个表单上提供下拉菜单或侧边栏菜单,以便导航到任何表单。

起始表单的工作区域应该为用户提供实际完成任务的功能。其中包括:

  1. “仪表板”主表单,显示有关用户工作的摘要信息(例如,要审核的帐户列表和每个帐户的状态,每个处理阶段的订单数量,待办计划)。理想情况下,用户应该能够直接在开头表格中执行他们最常见的任务(例如,将每个帐户标记为“已批准”或不批准)。如果需要进一步的信息来完成任务,链接将导航到填充了正确查询结果的详细表单。至少用户应该能够无需进一步评估他们的工作状态。请注意,不同的用户组可能需要在各自的仪表板上使用不同的内容。

  2. 默认表单。公司应用程序的用户通常具有特定的任务,通常只涉及所有表单中的一到三个。例如,使用Inventory的用户几乎不需要查看客户记录,反之亦然。用户还经常处理特定的记录子集。例如,可以为每个销售代表分配数据库中客户总数的一小部分。根据用户通常使用的表单和记录将用户划分为多个组。对于每个用户组,通过自动打开填充了其记录查询结果的用户组表单来启动应用程序。用户应该能够完成大部分工作而无需进一步导航或查询。

  3. 如果其他所有方法都失败了,请在用户退出应用时将应用打开到上次打开的任何表单和内容。许多企业用户明天将继续使用他们今天正在处理的相同或类似的东西。

  4. 分析用户的任务以确定要使用的上述选项。向用户描述每个选项并询问他们更喜欢哪个选项通常没有效率。

    BTW,“报告”可能不是一个特别好的导航选项。如果您始终主要通过他们显示的来识别事物,而不是他们如何显示,那就更好了。用户可能不知道他们想要查看的信息是“报告”而不是表格,但他们会知道他们想要看到的内容。库存报告在库存下访问;有关销售的报告可在销售下访问。

答案 4 :(得分:0)

您是否尝试过向最终用户询问他们想要的内容?毕竟他们是将要使用该系统的人。

答案 5 :(得分:0)

我使用DevExpress公司的组件。它们有一些非常酷的控件(例如Office 2007功能区),表单蒙皮实用程序(具有大量不同的外观),以及更多的负载......

如果你想查看它们有60个免费组件 - 如果它是公司的,你可能需要检查许可证,但你可以在... DevExpress 60 Free

答案 6 :(得分:0)

我建议从Microsoft建议的设计原则开始:Windows User Experience Interaction Guidelines

答案 7 :(得分:0)

有些地方可以获得互动设计的想法:

<强>图书

关于第3部分 - 交互设计的要点

不要让我思考(这是专注于网页设计,但许多原则延续到Windows设计)

网站

Windows User Experience Interaction Guidelines

此外,许多应用程序都有免费试用版,您可以下载这些版本以确定它们如何处理用户交互。另外,请勿立即对桌面上的项目进行折扣。

答案 8 :(得分:0)

您是否有关于最常用或最重要的功能可能是什么的统计数据或见解?如果是这样,您可以使用它来削减“大量按钮”并仅突出显示那些最重要的按钮。

这是一个微不足道的例子,但潜在的一点是,您对受众的理解应该通知您的设计,至少从功能的角度来看。您可能有过去的使用情况统计信息,用户故事或记录的工作流程,或者其他任何内容 - 即使您现在正在绘制一个空白,请记住您必须知道关于您的用户的某些内容,否则您不会我们不能为他们编写软件。

以他们已经知道的为基础可以让您的用户轻松上手。他们住在Outlook吗?然后你可能想模仿那个(建议Michael Petrotta)。他们每次使用应用程序时通常都会做同样的事情(在给定的角色内)吗?然后寻找一个简单,流线型的界面。他们是超级用户吗?然后他们可能希望能够调整和自定义界面。也许您甚至为不同的用户角色提供了不同的菜单表单。

在这个阶段,我不担心做得对;放松一下,放点东西。你设计的内容几乎无关紧要,因为如果你有订婚的用户而你给他们选择,他们会想要改变一些东西(一切都是?)。 ; - )