繁体   English   中英

如何捕获屏幕投射监视器或电视的屏幕截图

[英]How to capture screenshot of screen casted monitor or TV

我无法捕获使用屏幕投射连接的显示器的屏幕截图。

QApplication::screens().size(); 仅返回 1 个显示器连接。

如何检测?

请参阅有关屏幕截图的示例

首先,你应该像这样定义一个 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());

当您有另一台显示器时,这意味着您有 2 个窗口 ID。 当使用QApplication::desktop()->winId() 时,它会同时获得它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM