对话框控件 (C++)

可以使用工具箱窗口中的“对话框编辑器”选项卡将控件添加到对话框,以便选择所需的控件并将其拖到对话框。 默认情况下,“工具箱”窗口设为自动隐藏。 打开“对话框编辑器”时,它显示为解决方案左边距上的选项卡。 但可以通过选择窗口右上角的“自动隐藏”按钮,将工具箱窗口固定到某位置。 有关如何控制此窗口行为的详细信息,请参阅窗口管理

将控件添加到对话框、调整现有控件位置或将控件从一个对话框移动到另一个对话框的最快方法是使用拖放。 控件的位置用虚线勾勒出来,直到将它丢进对话框。 使用拖放方法将控件添加到对话框时,该控件得到适合该类型控件的标准高度。

向对话框添加控件或调整控件位置时,其最终位置由参考线或边距,或者由是否打开布局网格来确定。

向对话框添加控件后,可以在“属性”窗口更改其标题等属性。 还可选择多个控件并一次性更改其属性。

有关“对话框编辑器”的详细信息,请参阅如何添加、编辑或删除控件布局控件及定义控件访问和值

有关控件和对话框的详细信息,请参阅控件类对话框类滚动条样式

工具箱中包含默认事件的标准控件包括

控件名称 默认事件
按钮控件 BN_CLICKED
复选框控件 BN_CLICKED
组合框控件 CBN_SELCHANGE
编辑控件 EN_CHANGE
分组框 (不适用)
框控件 LBN_SELCHANGE
单选按钮控件 BN_CLICKED
静态文本控件 (不适用)
图片控件 (不适用)
Rich Edit 2.0 控件 EN_CHANGE
滚动条控件 NM_THEMECHANGED

注意

有关对 MFC 使用 RichEdit 1.0 控件的详细信息,请参阅对 MFC 使用 RichEdit 1.0 控件以及 Rich Edit 控件示例

工具箱中可用的 Windows 常用控件提供增强功能,它们包括:

控件名称 默认事件
滑块控件 NM_CUSTOMDRAW
数值调节钮控件 UDN_DELTAPOS
进度控件 NM_CUSTOMDRAW
热键控件 NM_OUTOFMEMORY
列表控件 LVN_ITEMCHANGE
树控件 TVN_SELCHANGE
Tab 控件 TCN_SELCHANGE
动画控件 ACN_START
日期时间选择器控件 DTN_DATETIMECHANGE
月历控件 MCN_SELCHANGE
IP 地址控件 IPN_FIELDCHANGED
扩展组合框控件
自定义控件 TTN_GETDISPINFO

自定义控件

“对话框编辑器”允许在对话框模板中使用现有的自定义控件或用户控件

注意

这种意义上的自定义控件不会与 ActiveX 控件混淆。 ActiveX 控件有时称为 OLE 自定义控件。 此外,不要将这些控件与 Windows 中的所有者绘制控件混淆。

此功能旨在让你使用 Windows 所提供控件以外的控件。 在运行时,控件与 Window 类(不同于 C++ 类)关联。 完成同一项任务更为常见的是在对话框中安装静态控件等任何控件。 然后在运行时在 OnInitDialog 函数中删除该控件,并将其替换为自己的自定义控件。

注意

这是一种旧技术。 目前建议在大多数情况下编写 ActiveX 控件或创建 Windows 通用控件的子类。

对于这些自定义控件,你只能:

  • 设置对话框中的位置。

  • 键入标题。

  • 标识控件的 Windows 类的名称,因为应用程序代码必须按此名称注册控件。

  • 键入设置该控件样式的 32 位十六进制值。

  • 设置扩展样式。

要求

Win32

另请参阅

对话框编辑器