常见对话

注意

此设计指南是为 Windows 7 创建的,并且尚未更新Windows的较新版本。 大部分指南原则上仍然适用,但演示和示例并不反映我们 当前的设计指南

Microsoft Windows常见对话框包括“打开文件”、“保存文件”、“打开文件夹”、“查找和替换”、“打印”、“页面设置”、“字体”和“颜色”对话框。

打开文件

screen shot of open dialog box

“打开文件”经过优化,可快速查找要与程序配合使用的项目。

保存文件

screen shot of save as dialog box

保存文件通过保存具有其元数据的文件来关闭循环。

打开文件夹

screen shot of browse for files/folders dialog box

“打开文件夹”专门用于选择文件夹。

查找和替换

screen shot of find and replace dialog boxes

“查找”允许用户搜索文本字符串,而“替换”版本(可选)允许用户将匹配项替换为另一个字符串。

打印

screen shot of print dialog box

打印允许用户选择要打印的内容、要打印的副本数和排序规则序列,以及选择和配置打印机的功能。

页面设置

screen shot of page setup dialog box

页面设置允许用户选择纸张大小和源、页面方向和页边距。

字体

screen shot of font dialog box

字体显示可用已安装字体的字体和点大小。

Color

screen shot of edit colors dialog box

颜色允许用户通过预定义的颜色集或选择“自定义”颜色来选择颜色。

设计概念

通过使用常用对话,可帮助用户在不同的程序中获得一致的体验。 通过使用常用对话,你还有助于为用户提供高效、愉快的体验。

通过为以下对话框选择最合适的默认值,可以显著改善用户体验:

  • 输入值 (示例:默认文件夹、默认文件名) 。
  • 所选选项 (示例:所选打印机、打印选项) 。
  • 视图 (示例:在缩略图视图中显示图片、显示没有文件名的图片、按日期排序、列宽) 。
  • 演示文稿 (示例:窗口大小、位置和内容) 。

必须同时确定初始默认值和后续默认值。 初始默认值由程序确定,并基于目标用户的预期使用情况,而后续默认值则基于实际使用情况。 过去的使用情况是未来使用情况的最佳指标。

程序的默认效率是否有效? 监视用户执行最常见任务时必须执行的步骤数。 如果用户每次执行任务时都必须重复相同的可能不必要的步骤,则可以改进默认值。

如果你只做一件事...

通过选择适当的初始和后续默认值,为用户提供高效、愉快的体验。

这是正确的用户界面吗?

是! 使用常见对话框获得一致的用户体验。 不要创建自己的。 创建正确且安全地导航命名空间的自定义 UI 尤其困难。 请注意,可以根据需要自定义常见对话。

对于 Windows Vista,“打开文件和保存文件”具有新的可扩展体系结构,以便更轻松地公开其他功能。 这种机制足够灵活,以满足主要独立软件供应商 (ISV) 的最低要求,但不受未来Windows版本的破坏。

指南

常规

  • 如果合适,请提供更直接或 无模式 的替代方法。 允许用户:
    • 通过在程序上删除文件来打开文件。
    • 使用其当前名称和位置通过 Save 命令保存文件。
    • 使用 F3 键查找字符串的下一个匹配项。
    • 使用 Print 命令将整个文档的一个副本打印到默认打印机。
    • 使用工具栏或调色板窗口更改字体和字体属性。
    • 使用工具栏或调色板窗口更改颜色。
  • 使用以下命令显示 (给定的常见对话及其首选 访问密钥) :
常见对话框 Command
打开文件
打开...
保存文件
另存为...
打开文件夹
打开文件夹...或选择文件夹...
查找和替换
找到。。。或替换...
打印
打印...
页面设置
页面设置...
字体
字体。。。或选择字体...
Color
颜色。。。或选择颜色...
  • 可以根据需要使用更具体的命令。 示例:若要导出文件,请使用命令“导出文件”而不是“另存为”。
  • 设置对话框标题以反映启动它的命令。 示例:如果从导出文件命令启动“保存文件”,请将对话框重命名为“导出文件”。

打开文件

  • 对于初始默认文件夹,请使用专用文件夹 (图片、音乐、视频) ,否则使用文档。
  • 对于后续默认文件夹,请使用使用程序的用户打开的最后一个文件夹。
  • 打开照片文件时,默认禁止显示文件名。 照片通常由缩略图标识,其名称通常不有意义。

保存文件

  • 对于初始默认文件夹 (如果第一次) 保存新文件,请使用专用文件夹 (图片、音乐、视频) ,否则请使用文档。
  • 对于临时文件,请使用当前用户的临时文件夹。 选择纯文件名,但唯一文件名。 示例:使用 File0001.tmp 而不是 ~DF1A92.tmp。
    • 开发 人员: 可以使用 GetTempPath API 函数获取当前用户的临时文件夹。
  • 对于初始默认文件名,请使用基于以下内容的唯一默认名称:
    • 文件的内容(如果已知)。 示例:文档中的第一个单词。
    • 用户选择的模式。 示例:如果上一个文件名为“夏威夷1.jpg”,请选择“夏威夷2.jpg”作为下一个文件。
    • 基于文件类型的泛型模式。 示例:“Photo1.jpg”。
  • 对于后续默认值 (如果文件已存在) ,请使用文件的当前文件夹和名称。
  • 保存文件时,请保留其创建日期。 如果程序通过创建临时文件来保存文件,请删除原始文件,并将临时文件重命名为原始文件名,请务必从原始文件复制创建日期。
  • 如果用户选择“保存”命令而不指定文件名,请使用“保存文件”。

文件类型列表

注意: 打开文件和保存文件使用文件类型列表来确定显示的文件类型和默认文件扩展名。

  • 如果文件类型列表短 (五个或更少) ,请根据使用的可能性对列表进行排序。 如果列表长 (六个或更多) ,请使用字母顺序使类型易于查找。
  • 对于“保存文件”,包括支持文件扩展名的所有变体,即使不常见,也首先放置最常见的扩展名。 文件处理逻辑将查看此列表,以确定用户是否提供了受支持的文件扩展名。 示例:如果 JPEG 文件类型列表仅包含.jpg和 .jpeg,则文件 test.jpe 可能另存为test.jpe.jpg。
  • 对于“保存文件”,初始默认文件类型最有可能由目标用户选择。 后续默认值为文件的当前类型。
  • 对于“打开文件”,初始默认文件类型最有可能由目标用户选择。 后续默认值应是使用的最后一个文件类型。
  • 对于“打开文件”,如果用户可以打开任何文件类型,或者可能需要同时查看文件夹中的所有文件,则包含“所有文件”条目作为第一个项目。 请考虑提供其他元筛选器,例如“所有图片”、“所有音乐”和“所有视频”。将这些文件立即置于“所有文件”之后。
  • 使用格式“文件类型名称 (*.ext1;*.ext2) 。”文件类型名称应为已注册的文件类型名称,可在“文件夹选项”控制面板项中查看。 示例:“HTML 文档 (*.htm;*.html) 。”
    • 例外: 对于元筛选器,请删除文件扩展名列表以消除混乱。 示例:“所有文件”、“所有图片”、“所有音乐”和“所有视频”。
  • 对文件类型名称使用 句子样式大写 ,对文件类型扩展名使用小写。

打开文件夹

  • 对于新程序,请使用“选取文件夹”模式下的“打开文件”对话框。 这样做需要Windows Vista 或更高版本,因此请对在早期版本的 Windows 中运行的程序使用“打开文件夹”对话框。
    • 开发 人员: 可以使用“选取文件夹”模式下的“打开文件”对话框,方法是使用FOS_PICKFOLDERS标志。

字体

  • 如有必要,可以筛选字体列表,仅显示程序可用的字体。

持久性

  • 请考虑将以下值持久用作后续默认值:
    • 输入值 (示例:默认文件夹、默认文件名) 。
    • 所选选项 (示例:所选打印机、打印选项) 。
    • 视图 (示例:在缩略图视图中显示图片、显示没有文件名的图片、按日期排序、列宽) 。
    • 演示文稿 (示例:窗口大小、位置和内容) 。

例外: 当这些值的使用使用户更可能希望完全结束时,不要将这些值保留在常见对话中。

  • 确定默认值时,请考虑根据重要方案最可能想要的目标用户。 此外,请考虑程序实例中的方案,跨多个实例 (连续或并发) ,以及跨多个文档。 不要使值保留在不太可能有用的情况下。
    • 例子: 对于基于文档的典型应用程序,最好在程序实例和连续实例之间使用持久打开文件和保存文件设置,但使并发实例保持独立。 这样,用户可以一次高效地处理多个文档。
  • 使设置按程序、按用户保留。