【问题标题】:Qt Cannot convert QPaintDevice to QImageQt 无法将 QPaintDevice 转换为 QImage
【发布时间】:2012-04-27 08:06:17
【问题描述】:

这听起来很傻,但我无法截取 QwebView 的屏幕截图。

QImage image(view.page()->viewportSize(), QImage::Format_ARGB32);
QPainter painter;
painter.begin(image); // Here is the error. See below
view.page()->mainFrame()->render(&painter);
painter.end();
image.save("out.png");

错误信息是,

mainwindow.cpp:115: error: no matching function for call to 'QPainter::begin(QImage&)'
candidate is bool QPainter::begin(QPaintDevice*)

据我所知,QPaintDevice 是 QPaint 的基础。

【问题讨论】:

    标签: c++ qt qpainter qimage


    【解决方案1】:

    从错误看需要通过指针传递image

    painter.begin(&image);
    

    【讨论】:

    • 糟糕!谢谢。我在控制台上寻找可能的候选人,但没有找到。 :)
    【解决方案2】:

    错误信息告诉你:begin 方法需要一个指向绘图表面的指针,而不是一个引用。尝试做:

    painter.begin(&image);
    

    【讨论】:

      猜你喜欢
      • 2018-01-16
      • 1970-01-01
      • 2018-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-13
      • 2018-12-26
      相关资源
      最近更新 更多