2014-10-10 27 views
1

我在QT中編寫了一個Android應用程序,並且當TouchEvent發射時,我的touchEvent-> touchPoints()。at(newPoint).pos()始終爲0, 0直到我移動手指並強制觸摸更新事件。有沒有辦法獲得TouchBegin的位置?以下是我的活動代碼:Qt TouchBegin touchPoint.pos()停留在0,0

bool event(QEvent* e) 
{ 
    switch(e->type()) 
    { 
     case QEvent::TouchBegin: 
     touchEvent = static_cast<QTouchEvent*>(e); 
     emit touchBegin(); 
      emit touchUpdate(); 
      return true; 
     case QEvent::TouchUpdate: 
      touchEvent = static_cast<QTouchEvent*>(e); 
      emit touchUpdate(); 
      return true; 
     case QEvent::TouchEnd: 
      emit touchEnd(); 
      return true; 
     default: 
      return QWidget::event(e); 
    } 
} 

回答

0

好的我解決了它。當我需要使用touchEvent.touchPoints()。at(currentPoint).pos()。x()或.y()時,我使用的是全局位置,如果它位於一個框架或小部件中,全球的立場。