I have been having issues using mapToLocal and mapToLocal I am wondering whether there are issues with using these functions within laidout components? Laidout within the brower is a navigation bar; laidout within the navigation bar are a series of QPushButtons.
Consistently, there is a 100-pixel discrepancy between where the mouse actually is and where QT seems to think it is. This problem occurs only within the nav bar. The mouse position is correctly detected in other parts of the browser . For example, the mouse was actually hovering over the RELOAD button when it was detected as hovering over the HOME button point= ( 567 , 112 ) HomeBtn QPoint(560,101) QPoint(603,132) I've tried different variations of this code but keep on getting the same error. Is something else going on here? Thanks Mitchell =========== CODE ONE if (button->geometry().contains( addressBar->mapFromGlobal(QPoint(kinect_x, kinect_y)))) ==================== CODE TWO bool NavigationBar:: checkGlobalPoint(QWidget * widge, int kinect_x, int kinect_y) { QPoint UL = widge->mapToGlobal(widge->geometry().topLeft()); QPoint LR = widge->mapToGlobal(widge->geometry().bottomRight()); qDebug() << "point= (" << kinect_x << ", " << kinect_y << ") " << widge->metaObject()->className() << " " << UL << " " << LR; if (kinect_x >= UL.x() && kinect_x <= LR.x() && kinect_y >= UL.y() && kinect_y <= LR.y()) { return true; } return false; } ============= CODE THREE bool NavigationBar::checkGlobalPoint(QWidget * widge, int kinect_x, int kinect_y) { int * x1 ,* y1 , * x2, * y2; x1 = (int *)malloc(sizeof(int)); y1 = (int *)malloc(sizeof(int)); x2 = (int *)malloc(sizeof(int)); y2 = (int *)malloc(sizeof(int)); QRect geo = widge->geometry(); geo.getCoords(x1,y1, x2, y2); QPoint UL = widge->mapToGlobal(QPoint(*x1, *y1)); QPoint LR = widge->mapToGlobal(QPoint(*x2, *y2)); if ((kinect_x >= UL.x()) && (kinect_x <= LR.x()) && (kinect_y >= UL.y()) && (kinect_y <= LR.y()) ) { return true; } return false; }
_______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest