我正在尝试创建一个 Qt 应用程序来从屏幕上的选定区域截取屏幕截图。现在我使用 QRubberBand 来选择屏幕区域。
它是这样工作的。
现在我必须截取我选择的部分的屏幕截图。
我想我必须将我从选择 QRubberBand 中获得的尺寸传递给这个:
screen->grabWindow( WId window, int x = 0, int y = 0, int width = -1, int height = -1 );
那么如何从 QRubberBand 获取我需要的信息呢?
我被困在这里,所以请有人帮助我!
最佳答案
在您的 OnMouseRelease
事件中,您可以使用 QRubberBand
获取 geometry()
的矩形。接下来使用 QRect::getRect
您可以将矩形左上角的位置提取为 x 和 y,并将其尺寸提取为宽度和高度。 :
const QRect & selectRect = mRubberBand->geometry();
int x, y, width, height;
selectRect.getRect(&x, &y, &width, &height);
关于c++ - 从 Qt 上的选定区域(QRubberBand)截取屏幕截图,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24666152/