我无法捕获使用屏幕投射连接的监视器的屏幕截图。
QApplication::screens().size();仅返回一个已连接的监视器。
如何检测?
发布于 2021-06-19 02:02:50
请参阅this example about screenshot
首先,您应该像这样定义一个QScreen对象
QScreen *screen = QGuiApplication::primaryScreen();然后
if (const QWindow *window = windowHandle())
{
screen = window->screen();
}
if (!screen)
{
return;
}然后,在头文件(.h)中应该有QPixmap对象,如QPixmap _pixmap;
最后,你应该这样写
_pixmap = screen->grabWindow(QApplication::desktop()->winId());当您有另一个监视器时,这意味着您有两个窗口ID。当使用QApplication::desktop()->winId(),时,它会同时获得这两个参数。
https://stackoverflow.com/questions/68005303
复制相似问题