我想保存 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);
但不幸的是这似乎不起作用。
有谁知道问题是什么?
In 这个答案 https://stackoverflow.com/questions/1142502/saving-qpixmap-to-jpeg-failing-qt-4-5#1142555 and 这个论坛帖子 http://www.qtcentre.org/threads/25920-QPixmap-save()-doesn-t-work,人们提出以下建议:
最有可能的是,您的应用程序找不到处理 .jpg 文件所需的插件。要解决此问题,请执行以下操作之一:
- 如果您正在进行静态构建,请添加
QTPLUGIN += qjpeg
到您的 .pro 文件或
- 如果您正在进行动态构建,请将
imageformats
文件夹来自%QTDIR%\plugins
在你的.exe旁边
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)