QT 源码 嵌入式图形引擎

铃溪 2017-07-21 01:30:20

在调用 QPainter 进行绘图时,会调用 QWidget 的 QPaintEngine 图形引擎,例如在 x11上
QPaintEngine *QWidget::paintEngine() const
{
Q_D(const QWidget);
if (qt_widget_paintengine()->isActive()) {
if (d->extraPaintEngine)
return d->extraPaintEngine;
QWidget *self = const_cast<QWidget *>(this);
self->d_func()->extraPaintEngine = new QX11PaintEngine();
return d->extraPaintEngine;
}
return qt_widget_paintengine();
}

但是在 linux 嵌入式设备中,QRasterPaintEngine在4.8 的版本中被注释了
QPaintEngine *QWidget::paintEngine() const
{
qWarning("QWidget::paintEngine: Should no longer be called");
return 0; //##### @@@
// if (!qt_widget_paintengine) {
// qt_widget_paintengine = new QRasterPaintEngine();
// qt_paintengine_cleanup_handler.set(&qt_widget_paintengine);
// }
// if (qt_widget_paintengine->isActive()) {
// if (d->extraPaintEngine)
// return d->extraPaintEngine;
// const_cast<QWidget *>(this)->d_func()->extraPaintEngine = new QRasterPaintEngine();
// return d->extraPaintEngine;
// }
// return qt_widget_paintengine;
}

请问一下各位大神,在qws linux 嵌入式版本的qt上, QPaintEngine 图形引擎是哪一个啊,在哪里创建的啊??
QT 版本: qt 4.8.5
...全文
158 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧