2012-04-27 53 views
0

這聽起來很愚蠢,但我無法截取QwebView的截圖。Qt無法將QPaintDevice轉換爲QImage

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是Q漆的基礎。

painter.begin(&image); 

回答

4

從你需要通過指針傳遞image誤差看起來方法begin需要一個指針到一個繪圖表面,而不是參考。試試看:

painter.begin(&image); 
+0

哎呀!謝謝。我在控制檯上尋找可能的候選人,但沒有找到。 :) – Dewsworld 2012-04-27 08:20:57

3

該錯誤消息告訴您: