windows:Windows/common-dialogs
出自UXGuide.net
通用对话框
Common Dialogs
目录 |
Microsoft® Windows® 通用对话框包括:打开文件、保存文件、打开文件夹、查找与替换、打印、页面设置、字体、以及颜色对话框等。
打开文件
打开文件对话框是为快速找到需要用于某个程序的文件而优化的。
保存文件
保存文件对话框用于保存文件内容及其元数据。
打开文件夹
打开文件夹对话框专用于选择文件夹。
查找与替换
查找对话框用于搜索文本字符串,而替换对话框则可以将符合查找条件的部分替换为另外的字符串。
打印
打印对话框用于选择要打印的内容、打印份数、排列顺序、以及能够选择和配置打印机。
页面设置
页面设置对话框用于选择纸张大小和来源、页面方向、以及页边距。
字体
字体对话框用于显示所有已安装的字体及其尺寸。
颜色
颜色对话框用于选择颜色,可以从一组预定义好的颜色中选择,也可以选择“自定义”颜色。
设计理念
使用通用对话框有助于在不同的程序之间为用户提供统一的体验。如果这些通用对话框使用“得当”,则能够为用户提供高效、愉快的体验。
通过为以下方面选择最合适的默认值,你可以用这些对话框来显著提升用户体验:
- 输入值(例如:默认文件夹、默认文件名)。
- 选中选项(例如:选中的打印机、打印选项)。
- 视图(例如:以缩略图方式显示图片、不带文件名显示图片、按日期排序、指定列宽)。
- 呈现方式(例如:窗口大小、位置及内容)。
“初始”默认值和“后续”默认值你都需要确定。初始默认值是由你的程序根据目标用户预期的用途来确定的,而后续默认值则基于实际的用途。过去的使用是对未来最好的指示。
你程序的默认值是否方便使用?观察用户在完成最常进行的任务时需要的步骤数目。如果用户每次完成任务时都需要重复一些相同的、可能不必要的步骤的话,你就应当着手改进你的默认值。
最重要的一点:
通过设置合适的初始及后续默认值为用户提供一个高效、愉悦的体验。
这样的用户界面是否合适?
是的,为了统一的用户体验,应当使用通用对话框。不要自己去创建它们。创建自定义界面以正确并安全地导航至命名空间是非常困难的。要知道,需要必要的话,你可以对通用对话框进行定制。
对于 Windows Vista®,打开文件和保存文件对话框具有一个新的扩展架构,以使其更容易暴露一些附加的功能。此机制的灵活性足以满足大部分独立软件供应商(ISV)的最低要求,而且不会因未来的 Windows 发行版本而被破坏。
设计规范
常规
- 尽可能提供更加直接或无模式的方式。让用户能够:
- 通过向你的程序拖放文件来打开文件。
- 通过保存命令以文件的当前名称和位置来保存。
- 使用 F3 键查找某字符串下一次出现的位置。
- 通过打印命令在默认打印机上将整个文档打印一份。
- 使用工具栏或调色板窗口更改字体及字体属性。
- 使用工具栏或调色板窗口更改颜色。
- 使用下列命令来显示通用对话框(也给出了推荐的访问键):
通用对话框 命令 打开文件 打开(O)... 保存文件 另存为(a)... 打开文件夹 打开文件夹(F)... 或 选择文件夹(f)... 查找与替换 查找(F)... 或 替换(R)... 打印 打印(P)... 页面设置 页面设置(U)... 字体 字体(F)... 或 选择字体(F)... 颜色 颜色(C)... 或 选择颜色(C)... - 如果可能的话,你可以使用更明确的命令。例如:对于导出文件操作,可以使用导出文件命令来代替另存为。
- 设置对话框的标题以符合对应的命令。例如:如果保存文件对话框是由导出文件引发的,应当将对话框更名为导出文件。
打开文件
- 对于初始默认文件夹,应当尽使用特别的文件夹(我的图片、我的音乐、我的视频等),否则就使用我的文档。
- 对于后续默认文件夹,应当使用用户使用该程序最后一次打开的文件夹。
- 当打开照片文件时,应当默认去掉文件名。照片一般是通过其缩略图来标识的,文件名通常没有意义。
保存文件
- 对于初始默认文件夹(如果是首次保存一个新文件时),应当尽使用特别的文件夹(我的图片、我的音乐、我的视频等),否则就使用我的文档。
- 对于临时文件,使用当前用户的临时文件夹。使用简单但唯一的文件名。例如:使用 File001.tmp 而不要使用 ~DF1A92.tmp。
- 致开发人员:你可以通过 GetTempPath API 函数来获取当前用户的临时文件夹。
- 对于初始文件名,应基于下列方法选用唯一的默认名称:
- 该文件的内容,如果可以知道的话。例如:文档的第一个单词。
- 由用户选定的模式。例如:如果之前的文件命名为“Hawaii 1.jpg”,则为下一个文件选用名称Hawaii 2.jpg“”。
- 基于文件类型的通用模式。例如:“Photo1.jpg”。
- 对于后续默认值(如果文件已经存在),则使用该文件当前所在的文件夹及名称。
- 当保存文件时,应保持其创建日期不变。如果你的程序在保存文件时,是先创建临时文件、然后删除原文件、再将临时文件更名为原始文件的话,应当确保将原文件的创建日期复制过来。
- 如果用户选择保存命令而没有指定文件名的话,则应使用保存文件对话框。
文件类型列表
注:文件类型列表用于打开文件和保存文件对话框,以确定所显示的文件类型以及默认文件扩展名。
- 如果文件类型列表较短(等于或少于五个),则应按照被使用的可能性来排序。如果列表较长(六个或更多),则应当使用字母顺序排列以便于查找。
- 对于保存文件对话框,应当包含所有支持文件的扩展名变体,即使是并不常用,然后将最常用的扩展名放在前面。文件处理逻辑应当查阅此列表以确定用户是否提供的是被支持的文件扩展名。例如:如果 JPEG 文件类型列表只包含 .jpg 和 .jpeg,那么文件 test.jpe 就有可能被保存为 test.jpe.jpg。
- 对于保存文件对话框,初始默认文件类型应当是目标用户最有可能选用的类型。后续默认值则应是文件的当前类型。
- 对于打开文件对话框,初始默认文件类型应当是目标用户最有可能选用的类型。后续默认值则应是最后一次使用的文件类型。
- 对于打开文件对话框,如果用户能够打开任意文件类型,或者需要同时查看文件夹内的所有文件的话,则应当在列表开头包含“所有文件”项。考虑提供其他的元筛选(meta filter),如“所有图片”、“所有音乐”及“所有视频”,并紧接在“所有文件”之后。
- 使用“文件类型名称 (*.ext1; *.ext2)”的格式。文件类型名称应当与你从文件夹选项控制面板项中看到的已注册文件类型名称一致。例如:“HTML 文档 (*.htm; *.html)”。
- 例外:对于元筛选,应当移除文件扩展名表以减少混乱。例如:“所有文件”、“所有图片”、“所有音乐”及“所有视频”
- 为文件类型名称使用句子大写样式,并小写文件类型扩展名。
打开文件
- 对于新程序,应当使用“文件夹选取”模式下的打开文件对话框。这需要 Windows Vista 或更新版本,因此对于需要运行在早期 Windows 版本上的程序来说,应当使用打开文件夹对话框。
- 致开发人员:你可以通过使用 FOS_PICKFOLDERS 标志来使用“文件夹选取”模式下的打开文件对话框。
字体
- 必要时,你可以对字体列表进行筛选,以只显示在你的程序中可用的字体。
保留(Persistence)
- 考虑保留下列值以用作后续默认值:
- 输入值(例如:默认文件夹、默认文件名)。
- 选中选项(例如:选中的打印机、打印选项)。
- 视图(例如:以缩略图方式显示图片、不带文件名显示图片、按日期排序、指定列宽)。
- 呈现方式(例如:窗口大小、位置及内容)。
- 例外:当其用途使得用户极有可能想要重头来过时,不要为通用对话框保留这些值。
- 在决定默认值时,应当基于最重要的情景来考虑目标用户最想要的是什么。而且,应当考虑包括仅在一个程序实例内部、跨越多个实例(包括先后和并行)及跨越多个文档的情况。不要保留那些没什么帮助的值。
- 示例:对于一个典型的基于文档的应用程序,在一个程序实例内及跨越先后多个实例间为打开文件和保存文件对话框保留设置是有用的,但并行实例则应当相互独立。这样的话,用户可以有效地同时处理多个文档。
- 设置保留应当基于特定的程序和用户。