2

谁能详细建议我如何使用QDirectPainter类直接在帧缓冲区上绘制小部件。如果您提供一个工作示例,我会更有帮助。

4

1 回答 1

1

QDirectPainter 不会也不能绘制任何东西。它在那里提供对帧缓冲区的访问,即通过其QDirectPainter::frameBuffer () 函数。一旦你有了帧缓冲区的指针,你应该能够直接操作像素。

一种可能有效的方法是通过光栅引擎将您的小部件绘制到 QImage(注意颜色深度、字节顺序、像素位置等以匹配您的帧缓冲区)。这很容易通过在 QImage 上打开 QPainter 来实现。绘制过程完成后,将图像缓冲区的相关部分blit到帧缓冲区。

于 2009-03-07T23:18:57.947 回答