青春岁月 |
2014-04-01 14:25 |
Qt5 杂谈(一)Qt5:Qt中屏幕或窗口截图功能的实现
要想在Qt中实现屏幕或窗口截图功能 ,通常有两种方法: 1 -- 使用 QPixmap 类
2 -- 使用 QScreen类
然而虽然俩两种方法用到的类不相同,但是调用到的类成员函数的函数名称和参数却是相同的 都是 grabWindow() 这个函数 所不同的是,QPixmap中的 grabWindow()函数 是静态成员 QScreen中的grabWindow()成员是非静态成员 下面展示两种截屏的方法 QPixmap方法
//截屏并保存为 123.jpgQPixmap::grabWindow(QApplication::desktop()->winId()).save("123","jpg");/****************************************************************要注意的是 QApplication::desktop()->winId(),返回的是要截屏的窗口的ID , 设为0 表示当前桌面 ,截屏时就会截全屏******************************************************************/
注:这种方法在Qt5中已经过时 , 应该使用QScreen方法代替 QScreen方法 1 //功能同样是截屏 , 注:QScreen的构造函数是私有的2 QScreen *screen = QGuiApplication::primaryScreen();3 screen->grabWindow(0).save("123","jpg"); |
|