C

QSafeRenderer 类

SafeRenderer::QSafeRenderer

QSafeRenderer 类用于渲染安全布局。 更多...

头文件 #include <QSafeRenderer>
QtSafeRenderer 1.0

此类在 QtSafeRenderer 1.0 中引入。

公共类型

枚举RendererException { UnsupportedSurfaceFormat, BitmapOutOfScreen, InvalidBitmapPointer, InvalidBitmapId }

公共函数

QSafeRenderer(SafeRenderer::AbstractWindow *const window, SafeRenderer::QSafeLayout *const layout)
~QSafeRenderer()
SafeRenderer::QSafeRectclear(const SafeRenderer::ARGB pixel)
SafeRenderer::QSafeRectclearBitmap(const SafeRenderer::quint32 itemId, const bool useGlobalClearColor)
SafeRenderer::QSafeRectclearBitmap(const SafeRenderer::qchar *const itemName, const bool useGlobalClearColor)
SafeRenderer::QSafeRectdrawBitmap(const SafeRenderer::quint32 itemId)
SafeRenderer::QSafeRectdrawBitmap(const SafeRenderer::qchar *const itemName)
boolsetLayout(SafeRenderer::QSafeLayout *const layout)
typedefqchar
typedefqint8
typedefqint32
typedefqint64
typedefqint
typedefquchar
typedefquint8
typedefquint16
typedefquint32
typedefquint64

详细描述

QSafeRenderer 类用于绘制和清除由 QSafeLayout 类定义的位图。

成员类型文档

枚举 QSafeRenderer::RendererException

此枚举描述了 QSafeRenderer 类中的异常值。

常量描述
SafeRenderer::QSafeRenderer::UnsupportedSurfaceFormat0窗口中的每像素位数既不是 16 也不是 32。
SafeRenderer::QSafeRenderer::BitmapOutOfScreen1位图不适合屏幕区域。
SafeRenderer::QSafeRenderer::InvalidBitmapPointer2位图指针是空指针。
SafeRenderer::QSafeRenderer::InvalidBitmapId3位图 ID 是 0。

成员函数文档

QSafeRenderer::QSafeRenderer(SafeRenderer::AbstractWindow *const window, SafeRenderer::QSafeLayout *const layout)

使用指定的 windowlayout 构造一个安全渲染器对象。 window 是绘制位图的目标窗口。 layout 保存布局数据位置。

如果发生失败,将抛出以下异常之一

常量描述
SafeRenderer::QSafeLayout::LayoutException::UnknownBitmapId无法通过给定的 ID 找到位图。
SafeRenderer::QSafeLayout::LayoutException::UnknownItem找不到项。
SafeRenderer::QSafeLayout::LayoutException::ItemOutOfBounds项的位置超出了布局的边界。
SafeRenderer::QSafeRenderer::RendererException::UnsupportedSurfaceFormat窗口中的每像素位数既不是 16 也不是 32,或者给定的帧缓冲区地址为 NULL,或者帧缓冲区不是 32 位字对齐。

QSafeRenderer::~QSafeRenderer()

销毁安全的渲染器。

SafeRenderer::QSafeRect QSafeRenderer::clear(const SafeRenderer::ARGB pixel)

将屏幕填充为pixel颜色。

SafeRenderer::QSafeRect QSafeRenderer::clearBitmap(const SafeRenderer::quint32 itemId, const bool useGlobalClearColor)

从屏幕清除位图itemId

如果useGlobalClearColor为true,则以m_clearColor填充位图的矩形;否则,如果位图有fillColor属性,则使用该属性。如果失败,将抛出以下异常之一

常量描述
SafeRenderer::QSafeRenderer::BitmapOutOfScreen位图不适合屏幕。
SafeRenderer::QSafeRenderer::InvalidBitmapPointer位图指针是空指针。
SafeRenderer::QSafeRenderer::InvalidBitmapId位图 ID 是 0。
SafeRenderer::QSafeRenderer::UnsupportedSurfaceFormat窗口中的每像素位数既不是 16 也不是 32,或者给定的帧缓冲区地址为 NULL,或者帧缓冲区不是 32 位字对齐。

SafeRenderer::QSafeRect QSafeRenderer::clearBitmap(const SafeRenderer::qchar *const itemName, const bool useGlobalClearColor)

从屏幕清除位图itemName

如果useGlobalClearColor为true,则以m_clearColor填充位图的矩形;否则,如果位图有fillColor属性,则使用该属性。如果失败,将抛出以下异常之一

常量描述
SafeRenderer::QSafeRenderer::BitmapOutOfScreen位图不适合屏幕。
SafeRenderer::QSafeRenderer::InvalidBitmapPointer位图指针是空指针。
SafeRenderer::QSafeRenderer::InvalidBitmapId位图 ID 是 0。
SafeRenderer::QSafeRenderer::UnsupportedSurfaceFormat窗口中的每像素位数既不是 16 也不是 32,或者给定的帧缓冲区地址为 NULL,或者帧缓冲区不是 32 位字对齐。

SafeRenderer::QSafeRect QSafeRenderer::drawBitmap(const SafeRenderer::quint32 itemId)

将位图itemId绘制到屏幕上。

如果发生失败,将抛出以下异常之一

常量描述
SafeRenderer::QSafeRenderer::BitmapOutOfScreen位图不适合屏幕。
SafeRenderer::QSafeRenderer::InvalidBitmapPointer位图指针是空指针。
SafeRenderer::QSafeRenderer::InvalidBitmapId位图 ID 是 0。

SafeRenderer::QSafeRect QSafeRenderer::drawBitmap(const SafeRenderer::qchar *const itemName)

将位图itemName绘制到屏幕上。

如果发生失败,将抛出以下异常之一

常量描述
SafeRenderer::QSafeRenderer::BitmapOutOfScreen位图不适合屏幕。
SafeRenderer::QSafeRenderer::InvalidBitmapPointer位图指针是空指针。
SafeRenderer::QSafeRenderer::InvalidBitmapId位图 ID 是 0。
SafeRenderer::QSafeRenderer::UnsupportedSurfaceFormat窗口中的每像素位数既不是 16 也不是 32,或者给定的帧缓冲区地址为 NULL,或者帧缓冲区不是 32 位字对齐。

bool QSafeRenderer::setLayout(SafeRenderer::QSafeLayout *const layout)

设置布局为layout

可以在运行时更改渲染器布局。新布局的大小必须与当前布局匹配。

如果设置layout成功,则返回true,否则返回false。

相关非成员函数

typedef qchar

Qt样式的8位signed char的同义词。

typedef qint8

Qt样式的8位signed char的同义词。

typedef qint32

Qt样式的32位signed int的同义词。

typedef qint64

Qt样式的64位signed long long的同义词。

typedef qint

Qt样式的32位signed int的同义词。

typedef quchar

Qt样式的8位unsigned char的同义词。

typedef quint8

Qt样式的8位unsigned char的同义词。

typedef quint16

Qt样式的16位unsigned short的同义词。

typedef quint32

Qt风格的32位unsigned int同义词。

typedef quint64

Qt风格的64位unsigned long long同义词。

在某些Qt许可证下可用。
了解更多。