首页| 论坛| 消息

标题:【提问】如何保存控件为图像?
作者:qlong79
日期:2006-02-04 02:58
内容:

我在继承QWidget的控件:mywidget上做图
现在想把会有图形的mywidget控件保存为bmp图像,应该如何做呢?
我在保存函数中用:
QPixmap pm(450,450);
bitBlt(&pm,0,0,this,0,0,450,450);
pm.save( filename, "bmp" );
但是没有存下来
另外,我还想保存整个程序界面为图片
又该如何处理呢?
谢谢


#1 [icevi 03-21 14:05]
QPixmap::grabWindow
QPixmap::grabWidget
应该有帮助
#2 [obrire 04-02 17:09]
采用QImage, 可以实现.
QT内建有多种图形文件格式的存储功能.
存储时, 选好过滤器(bmp/jpg/png/etc)
将QImage内存中数据写入相应接口就可以了.
QImage visibleImage = image;
resizeImage(&visibleImage, size());
if (visibleImage.save(fileName, fileFormat)) {
modified = false;
return true;
} else {
return false;
}
void MainWindow::save()
{
QAction *action = qobject_cast(sender());
QByteArray fileFormat = action->data().toByteArray();
saveFile(fileFormat);
}

回复 发表
主题 版块