gpt4 book ai didi

c++ - 在 Qt 中使用 QDesktopWidget 截取多个屏幕的屏幕截图

转载 作者:行者123 更新时间:2023-11-30 03:56:46 26 4
gpt4 key购买 nike

我正在使用 Qt-5.2 和 Win7。

该应用程序使用两个显示器,我想截取包含两个屏幕的屏幕截图。QGuiApplication::screens() 返回两个 QScreen 对象的列表,当我截取主屏幕的屏幕截图时,就可以了。但现在我需要两者的屏幕截图,所以 QDesktopWidget 似乎是一个不错的选择。 QDesktopWidget 对象是一个虚拟对象,因此它处理虚拟桌面中的两个屏幕。

当我使用它时,像素图已正确生成。

QPixmap pm = some_widget->grab();

但是当我用桌面小部件尝试这个时,我只得到一个灰色图像。

QPixmap pm = QApplication::desktop()->grab();

有什么想法吗?谢谢!

最佳答案

我不打算使用它,因为它已经过时了,但我设法用这种方式做我想做的事:

QDesktopWidget* dw = QApplication::desktop()    
QPixmap pixmap = QPixmap::grabWindow( dw->winId(), 0, 0, dw->width(), dw->height() );

关于c++ - 在 Qt 中使用 QDesktopWidget 截取多个屏幕的屏幕截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28328653/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com