通用对话框库为每种常见对话框提供创建函数和结构。 若要以最简单的形式使用通用对话框,请调用其创建函数,并指定指向包含初始值和选项标志的结构的指针。 初始化对话框后,对话框过程使用结构返回有关用户输入的信息。 还可以自定义通用对话框,以满足应用程序的需求。
下表简要介绍了不同类型的常见对话框,并显示了与每种类型一起使用的函数和结构。
對話方塊 | 描述 |
---|---|
颜色 |
显示可用颜色,并选择性地允许用户创建自定义颜色。 用户可以选择基本颜色或自定义颜色。 使用 ChooseColor 函数和 CHOOSECOLOR 结构。 有关详细信息,请参阅 颜色对话框。 |
查找 |
显示用户可以在其中键入要查找的字符串的对话框。 用户还可以指定搜索选项,例如搜索方向以及搜索是否区分大小写。 使用 FindText 函数,并 FINDREPLACE 结构。 有关详细信息,请参阅 查找和替换对话框。 |
字体 |
显示一个对话框,用户可以在其中选择字体系列和相关字体样式、点大小和其他字体属性,例如字体颜色、下划线或删除线。 使用 ChooseFont 函数,并 CHOOSEFONT 结构。 有关详细信息,请参阅 字体对话框。 |
打开 |
显示一个对话框,用户可以在其中键入或选择要打开的文件或 shell 名称空间对象的名称。 该对话框包括驱动器、目录和 shell 名称空间扩展的列表,使用户能够浏览 shell 名称空间。 它还包括文件扩展名列表,使用户能够筛选显示的文件名。 使用 GetOpenFileName 函数和 OPENFILENAME 结构。 有关详细信息,请参阅 打开和另存为对话框。 |
页面设置 |
显示当前页配置。 用户可以选择页面配置选项,例如纸张方向、大小、源和页边距。 使用 PageSetupDlg 函数和 PAGESETUPDLG 结构。 有关详细信息,请参阅 “页面设置”对话框。 |
打印 |
显示有关已安装打印机及其配置的信息。 用户可以选择打印作业选项,例如要打印的页面范围和副本数,并启动打印过程。 使用 PrintDlg 函数和 PRINTDLG 结构。 有关详细信息,请参阅 打印对话框。 若要显示 Print 属性表而不是 打印 对话框,请使用具有 PRINTDLGEX 结构的 PrintDlgEx 函数。 属性表的 常规 页类似于“打印 ”对话框。 属性表可以在 常规 页之后具有其他特定于应用程序的属性页和特定于驱动程序的属性页。 有关详细信息,请参阅 打印属性表。 |
替换 |
显示一个对话框,用户可以在其中键入要查找的字符串和替换字符串。 用户可以指定搜索选项,例如搜索是否区分大小写,以及替换选项,例如替换范围。 使用 ReplaceText 函数和 FINDREPLACE 结构。 有关详细信息,请参阅 查找和替换对话框。 |
另存为 |
显示一个对话框,用户可以在其中键入或选择保存文件或 shell name-space 对象的名称。 该对话框包括驱动器、目录和 shell 名称空间扩展的列表,使用户能够浏览 shell 名称空间。 它还包括文件扩展名列表,使用户能够筛选显示的文件名。 使用 GetSaveFileName 函数和 OPENFILENAME 结构。 有关详细信息,请参阅 打开和另存为对话框。 |
尽管 打印安装程序 对话框可用,但它已被 页面设置 对话框取代。 应用程序应使用 页面设置 对话框,而不是 打印安装程序 对话框。
除“查找 ”和“替换”对话框 外,所有常见对话框都是模式对话框。 用户必须先关闭模式对话框,然后才能返回用于创建对话框的函数。 查找 和 替换 对话框是无模式的;函数在对话框关闭之前返回。 如果使用 查找 和 替换 对话框,则还必须在应用程序的主消息循环中使用 IsDialogMessage 函数,以确保这些对话框正确处理键盘输入(如 TAB 和 ESC 键)。