我想在Qt中保存小部件的屏幕截图。 我创建了以下应该有效的代码:
QWidget* activeWidget = getActiveWidget();//a function that returns the current widget.
if (activeWidget == NULL)
{
return;
}
QPixmap screenshot;
screenshot = QPixmap::grabWidget(activeWidget,activeWidget->rect());
if(screenshot.isNull()){
printf("ERROR");
}
bool a= screenshot.save("c:\\temp\\asd.jpg", "JPG", 50);
但不幸的是,这似乎不起作用。 有谁知道问题是什么?
答案 0 :(得分:1)
在this answer和this forum post中,人们会提出以下建议:
最有可能的是,您的应用程序找不到处理.jpg文件所需的插件。要解决此问题,请执行以下操作之一:
QTPLUGIN += qjpeg
添加到.pro文件或imageformats
文件夹从%QTDIR%\plugins
放在.exe