ATL 控件向导

将 ATL 控件插入 ATL 项目(或支持 ATL 的 MFC 项目)。 你可以使用此向导插入以下三种控件之一:

  • 标准控件

  • 复合控件

  • DHTML 控件

此外,你可以指定一个最小控件,这将从“接口”列表中删除接口(这些接口是默认提供的,用于在大多数容器中打开控件)。 你可以在向导的“接口”页面中设置你希望控件支持的接口。

注解

此向导生成的注册脚本在 HKEY_CURRENT_USER(而不是 HKEY_LOCAL_MACHINE)下注册它的 COM 组件。 若要修改此行为,请设置 ATL 向导的“为所有用户注册组件”选项。

名称

命名要添加到项目中的对象、接口和类。 除了“短名称”外,其他所有框都可以独立更改。 如果你更改“短名称”的文本,更改会反映在此页中其他所有框的名称中。 如果你更改 COM 部分中的 Coclass 名称,更改会反映在“类型”框中,但“接口”名称和“编程 ID”不会改变。 此命名行为旨在方便你在开发控件时可轻松识别所有名称。

备注

“组件类”仅对非特性化控件可编辑。 如果项目已特性化,便无法编辑“组件类”

C++

提供为了实现对象而创建的 C++ 类的信息。

  • 短名称

    设置对象的缩写名称。 你提供的名称确定类和 Coclass 名称、文件(.CPP 和 .H)名称、接口名称和类型名称,除非你单独更改这些字段。

  • 设置用于实现对象的类的名称。 此名称以你在“短名称”中提供的名称为依据,跟在典型的类名前缀“C”后面。

  • .h 文件

    为新项目的类的头文件设置名称。 默认情况下,此名称以你在“短名称”中提供的名称为依据。 单击省略号按钮以将该文件名保存至所选择的位置,或追加到某个现有文件的类声明中。 如果你选择现有文件,除非你单击“完成”,否则向导不会将文件保存到选定位置。

    向导不会覆盖文件。 如果选择现有文件的名称,当你单击“完成”时,向导会询问你是否要将该类声明追加至文件的内容中。 单击“是”,则追加该文件;单击“否”,则返回至向导并指定另一个文件名

  • .cpp 文件

    为新项目的类的实现文件设置名称。 默认情况下,此名称以你在“短名称”中提供的名称为依据。 单击省略号按钮以将文件名保存到所选位置。 向导在你单击“完成”之前不会将该文件保存到所选位置

    向导不会覆盖文件。 如果选择现有文件的名称,当你单击“完成”时,向导会询问你是否要将该类实现追加至文件的内容中。 单击“是”,则追加该文件;单击“否”,则返回至向导并指定另一个文件名

  • 特性化

    指明对象是否使用特性。 若要将对象添加到特性化 ATL 项目,在选中此选项后便无法更改。 也就是说,只能将特性化对象添加到创建的支持特性的项目中。

    只能将特性化对象添加到使用特性的 ATL 项目中。 如果你对不支持特性的 ATL 项目选中此选项,向导会提示你指定是否要向项目添加特性支持。

    默认情况下,在设置此选项后添加的任何对象都被指定为特性化对象(复选框处于选中状态)。 可以取消选中此框来添加不使用特性的对象。

    有关详细信息,请参阅 ATL 项目向导的“应用程序设置”特性的基本机制

COM

提供对象的 COM 功能的相关信息。

  • 组件类

    设置包含对象支持的接口列表的组件类的名称。

    备注

    如果使用特性创建项目,或在此向导页上指明空间使用特性,便无法更改这一选项,因为 ATL 不包括 coclass 特性。

  • Interface

    设置对象的接口名称。 默认情况下,接口名称前面带有“I”。

  • 类型

    设置注册表中显示的对象说明

  • ProgID

    设置容器可用来代替对象 CLSID 的名称。 此字段不会自动填充。 如果你不手动填充此字段,则该控件可能对其他工具不可用。 例如,如果生成的 ActiveX 控件不含 ProgID,则在“插入 ActiveX 控件”对话框中不可用。 有关此对话框的更多信息,请参阅 插入 ActiveX 控件

另请参阅

ATL 控件
向复合控件添加功能
ATL COM 对象基础知识