在代码中创建向导
简介
如果基于模板的自定义向导提供的功能不足以满足您的需求,您可以在代码中编写向导。
Qt Creator 中的向导是实现了 Core::IWizardFactory 接口的类的实例,它已通过 IWizardFactory::registerFactoryCreator 注册了创建函数。
实现向导需要
- 编写一个从 Core::IWizardFactory 继承的工厂类。这是一个非常通用的接口,不对向导的功能和界面外观作任何假设。
- 提供一组参数,这些参数确定向导在 新建文件 或 新建项目 对话框中的向导列表中显示的方式。
从 Core::IWizardFactory 继承时,构造函数必须调用基类提供的以下设置器
setId()- 设置 ID
setWizardKind()- 设置向导类型
setIcon()- 设置图标
setDescription()- 设置描述
setDisplayName()- 设置显示名称
setCategory()- 设置类别
setDisplayCategory()- 设置显示类别
setDescriptionImage()- 设置描述图片
setRequiredFeatures()- 设置所需特性
setFlags()- 设置标志
- 实现向导 UI
通常,这将是继承自 Utils::Wizard 的类。 Utils::Wizard 使用左边的进度条扩展了 QWizard。
- 实现向导功能
建议使用 Core::GeneratedFile 来表示需要写入磁盘的文件。它们允许将实际数据写入磁盘的操作延迟到向导完成后进行。
相关类
类 | 描述 |
---|---|
Core::IWizardFactory | Qt Creator 向导接口,其实现在 ExtensionSystem::PluginManager 中注册。 |
Core::GeneratedFile | 包含名称、内容和一些属性的文件。 |
Utils::FileWizardPage | 简介向导页面,询问文件名和路径。 |
Utils::ProjectIntroPage | 简介向导页面,询问项目名称和路径。 |
IWizardFactory 的设置器和获取器
下表中的设置器和获取器决定了向导在 新建文件 或 新建项目 对话框中的向导列表中的显示方式。
类型 | 参数名称 | 描述 |
---|---|---|
Core::IWizardFactory::WizardKind | kind | 指示向导类型(project 或 file )的枚举值。 |
QIcon | icon | 要显示的图标。 |
QString | description | 描述性文本。 |
QString | displayName | 显示在列表中的名称。 |
QString | id | 向导的唯一标识符。它还决定了类别内的顺序。 |
QString | category | 标识将向导列出在其下的类别的标识符。它还决定了类别的顺序。 |
QString | displayCategory | 类别的描述。 |
具有相同类别设置的向导将在 新建文件 或 新建项目 对话框中一起分组。
©2024 年 Qt 公司有限公司的应用文档贡献属于各自所有者的版权。提供的文档是在自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款下授权的。Qt 及其相关标志是芬兰和/或其他国家/地区的 Qt 公司商标。所有其他商标均为其各自所有者的财产。