我无法捕获使用屏幕投射连接的监视器的屏幕截图。
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
复制相似问题