查看完整版本: [-- Qt怎么获取当前鼠标位置的像素值 --]

QTCN开发网 -> Qt基础编程 -> Qt怎么获取当前鼠标位置的像素值 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

lccssr 2017-11-17 20:11

Qt怎么获取当前鼠标位置的像素值


      我首先利用鼠标事件获得了很多点的坐标,现在想获得这些点的像素值,但是遇到了一些问题,代码如下
  //第一点的坐标
        int xxt=array[0];
        int yyt=array[1];


        QScreen *screen = QGuiApplication::primaryScreen();
        QPixmap pixmap = screen->grabWindow(QWidget::winId(),xxt,yyt,-1,-1);
        QImage image=pixmap.toImage();
        QColor color1 = image.pixel(QPoint(xxt, yyt));
        ui->label_8->setText(tr("%1,%2,%3").arg(color1.red()).arg(color1.blue()).arg(color1.green()));

最后结果像素只有两种 一种是0,0,0  一种是240,240,2
具体应该怎么解决呢?
他还会提示QImage::pixel: coordinate (145,1150) out of range。


查看完整版本: [-- Qt怎么获取当前鼠标位置的像素值 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled