用 qt6写了一个截图工具
如下代码实现矩形截图,但为什么截出来的图片都放大了
mainWindow.cpp中
```c++
//先获取全屏截屏
m_rect* m=new m_rect();
QScreen *screen=QGuiApplication::primaryScreen();
m->fullScreen=screen->grabWindow();
m_rect.cpp中
```c++
void m_rect::paintEvent(QPaintEvent *)
{
QPainter painter(this);
QPen pen;
pen.setColor(Qt::blue);
pen.setWidth(2);
painter.setPen(pen);
int lx = begPos.x()<endPos.x()?begPos.x():endPos.x();//矩形截图区域左上角x坐标
int ly = begPos.y()<endPos.y()?begPos.y():endPos.y();//矩形截图区域右上角x坐标
int w = begPos.x()<endPos.x()?endPos.x()-begPos.x():begPos.x()-endPos.x();//矩形截图区域宽度
int h = begPos.y()<endPos.y()?endPos.y()-begPos.y():begPos.y()-endPos.y();//矩形截图区域高度
QRect rect=QRect(lx,ly,w,h);
painter.drawPixmap(rect,fullScreen,rect);
painter.drawRect(lx,ly,w,h);
}
截出来就是这样,所有图标都被放大了,并且最小化的窗口也显示出来,这是为什么呢