EEVblog Electronics Community Forum

Products => Computers => Programming => Topic started by: firewalker on July 17, 2020, 09:27:40 am

Title: Qt screenshot with multiple monitors
Post by: firewalker on July 17, 2020, 09:27:40 am
I have a problem with a program using Qt to screenshot. I order to try and solve it my self, I had a look to the screenshot example:

https://doc.qt.io/qt-5/qtwidgets-desktop-screenshot-example.html

Downloading and compiling the program, it works but only for the individual screens. In another post

https://forum.qt.io/topic/65813/screenshot-secondary-monitor

I saw that the line (screenshot.cpp line 170)

Code: [Select]
 screen->grabWindow(0);

Should be change to

Code: [Select]
originalPixmap = screen->grabWindow(0, screen->geometry().x(), screen->geometry().y(), screen->size().width(), screen->size().height());

With this change when the program is moved to the secondary monitor; captures it just fine.

(https://i.imgur.com/VrzobmHs.png) (https://i.imgur.com/VrzobmH.png)

When moved to the primary monitor it just capture only a part of the screen and not the entire two monitors. The produced image has the dimensions of the primary monitor.

(https://i.imgur.com/sVDTe2Us.png) (https://i.imgur.com/sVDTe2U.png)

Exactly the same issue I have with the software I need to use.

This is my monitor configuration:

(https://i.imgur.com/LPneEcOs.png) (https://i.imgur.com/LPneEcO.png)

And this is my entire desktop capture with KDE Spectacle.

(https://i.imgur.com/DOCmdrGs.jpg) (https://i.imgur.com/DOCmdrG.jpg)

What could be the issue?