我有一个C ++图像,我想点击一个像素的坐标(图像的亲戚)点击它(我的图片可用并打开点击它)。我不知道如何定义执行此操作所需的信号和插槽。感谢。
答案 0 :(得分:1)
为您的案件提供了一些活动。请阅读this post以获取进一步说明。
我假设您正在使用控件来显示从QWidget
派生的图像,例如QImage
。
QWidget
- 派生类可以处理鼠标事件,例如点击并发送QMouseEvent
。这包含 x - 和 y -coordinates 相对于接收事件的小部件。
使用这些来通过调用QImage::pixel(x, y)
(返回QRgb
)来读取像素值。
答案 1 :(得分:1)
eventFilter(QObject *obj, QEvent *event){
//blabla
if (event->type() == QEvent::MouseButtonPress) {
QMouseEvent* MouseEvGrip = (QMouseEvent*)event;
Point2f clickePixel((float)MouseEvGrip->x(), (float)MouseEvGrip->y());
//blabla
}
}