• 3858阅读
  • 0回复

[讨论]Qt怎么获取当前鼠标位置的像素值 [复制链接]

上一主题 下一主题
离线lccssr
 

只看楼主 倒序阅读 楼主  发表于: 2017-11-17

      我首先利用鼠标事件获得了很多点的坐标,现在想获得这些点的像素值,但是遇到了一些问题,代码如下
  //第一点的坐标
        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。
快速回复
限100 字节
 
上一个 下一个