C
应用程序类
class Qul::Application应用程序类用于启动 Qt Quick Ultralite. 更多...
头文件 | #include <qul/application.h> |
自 | Qt Quick Ultralite 1.2 |
公开函数
Application(const Qul::ApplicationConfiguration &applicationConfigs) | |
void | exec() |
void | setRootItem(Qul::RootItem *root) |
Qul::ApplicationSettings & | settings() |
const Qul::ApplicationSettings & | settings() const |
uint64_t | update() |
静态公开成员
void | addFilesystem(PlatformInterface::Filesystem *filesystem) |
void | addImageDecoder(PlatformInterface::ImageDecoder *imagedecoder) |
void | addImageProvider(const char *providerId, Qul::ImageProvider *provider) |
详细描述
此类的构造初始化 Qt Quick Ultralite。通常它是在 main()
函数中构造的,启动时显示的项目通过 setRootItem() 设置,然后调用 exec() 以进入事件循环。必须通过 Qul::initHardware() 或您自己的代码初始化硬件。在进入事件循环之前,必须通过 Qul::initPlatform() 初始化 Qt Quick Ultralite 平台。例如,如果定义在 QML 中的根项目名为 Main
Qul::initHardware(); // Optional Qul::initPlatform(); Qul::Application app; static struct Main item; app.setRootItem(&item); app.exec();
另请参阅 在应用程序中启动 Qt Quick Ultralite.
成员函数文档
Application::Application(const Qul::ApplicationConfiguration &applicationConfigs)
带有 Qul::ApplicationConfiguration
实例作为参数的 Application 类的替代构造函数。使用此构造函数而不是默认构造函数配置文本缓存设置,例如启用文本缓存和文本缓存大小。
[静态]
void Application::addFilesystem(PlatformInterface::Filesystem *filesystem)
添加一个要在使用 file://
URL 方案打开文件时搜索的文件系统。
应用程序不拥有 文件系统。
有关实现和使用文件系统的详细信息,请参阅 文件系统文档。
另请参阅 Qul::PlatformInterface::Filesystem。
[静态]
void Application::addImageDecoder(PlatformInterface::ImageDecoder *imagedecoder)
添加图像解码器,在加载图像时进行搜索。
应用程序不拥有 imagedecoder。
有关实现和使用自定义图像解码器的详细信息,请参阅 图像解码器文档。
另请参阅 Qul::PlatformInterface::ImageDecoder。
[静态]
void Application::addImageProvider(const char *providerId, Qul::ImageProvider *provider)
将 provider 设置为用于通过 image://
url 方案请求图像,主机为 providerId。
应用程序不拥有 provider。
请参阅 ImageProvider 文档以了解实现和使用图像提供器的详细信息。必须在加载任何 QML 源文件之前将所有必需的图像提供器添加到引擎中。
providerId 必须以空字符结尾。
void Application::exec()
进入 Qt Quick Ultralite 事件循环并返回。
void Application::setRootItem(Qul::RootItem *root)
将应用程序启动时显示的项目设置为 root。项目由 QML 定义,在 C++ 中定义的表示它们的结构体在生成的头文件中定义,该头文件的名称与 .qml 文件相同。
Qul::ApplicationSettings &Application::settings()
通过该对象配置应用程序,返回一个方便的 ApplicationSettings
对象。
const Qul::ApplicationSettings &Application::settings() const
这是一个重载函数。
[自 Qt Quick Ultralite 1.8]
uint64_t Application::update()
更新 Qt Quick Ultralite 核心引擎
在应用程序代码内部实现主循环时,此函数用于更新 Qt Quick Ultralite 核心引擎。返回 Qt Quick Ultralite 核心引擎期望下次被调用的时间戳。时间戳小于当前时间戳或等于 0 时,应尽快调用 update()。一个大于当前时间戳的时间戳值表示平台实现应在指定时间调用 update()。在此指定时间之前,设备可能进入休眠模式。
在调用 exec() 时无需此操作。
Qul::initHardware(); Qul::initPlatform(); Qul::Application app; static MainScreen item; app.setRootItem(&item); while (true) { uint64_t now = Qul::Platform::getPlatformInstance()->currentTimestamp(); // <handle timers> uint64_t nextUpdate = app.update(); if (nextUpdate > now) { // Device can go to sleep until next update is due // enterLowPowerMode(nextUpdate - now); } }
此函数是在 Qt Quick Ultralite 1.8 中引入的。
另请参阅 exec()。
在某些 Qt 许可下可用。
了解更多信息。