[SOLVED] QTouchEvent contains only 2 TouchPoints on Windows7?



  • Hi all,

    I'm using Qt 4.8.5 on Windows 7 with VC2010. My application uses touch events for a pinch function. For pinching I need only two touch points - it works.

    But know I want to add some functions if user touches the screen more than twice.
    for example user touches with 3 finger to screen I will maximize the application window. But following is never called:

    @::event(QEvent* e)
    {
    ...
    QListQTouchEvent::TouchPoint touchPoints = event->touchPoints();
    if (touchPoints.count() == 3)
    {
    qDebug("yeahh, 3 points touched!");
    }
    }@

    Does anybody has an idea? Please don't say it's part of the platform. Is it possible that Qt doesn't fully implement the platform touch API?

    THX



  • BTW the fingerprints example works also only with 2 touches. When a third is touched absolutly nothing happens.

    I would say "Qt supports multitouch events" is limited to 2 touches :-(


  • Moderators

    i would rather say that your touch screen only supports 2 touch points.
    Please check the specs of your hardware



  • [quote author="raven-worx" date="1375365731"]i would rather say that your touch screen only supports 2 touch points.
    Please check the specs of your hardware[/quote]

    Do you have some experience with other hardware on Windows 7?
    Are you able to catch more than 2 touches on a Windows 7 system?

    I want to make sure that it's a hardware problem and not in Qt.

    I'm using a iiyama ProLite T2250MTS. Currently I'm looking for a test program which catches the touches/gestures.


  • Moderators

    as i said: your touchscreen only supports 2 touch-points
    http://www.iiyama.com/gl_en/products/prolite-t2250mts-1/

    [quote]
    Touchtechnology : optical, multitouch (2 compatible touch points), activated by finger or stylus
    [/quote]

    meaning it sends only two touchpoints to the OS driver which forwards it as windows events to your Qt application.



  • Qt easily accepts multiple touch points, for example swipe gesture requires 3 touch points by default.

    check "this":http://qt-project.org/doc/qt-4.8/qswipegesture.html#note-219 and "this":http://qt.gitorious.org/qt/qt/blobs/4c400ec8e397b4da9898f96c50a702eaa362293d/src/gui/kernel/qstandardgestures.cpp



  • Thanks a lot. I found the same article. Also that Windows 7 is poor supporting more than 2 fingers :-(

    I will try to port Qt's fingerprint example to my Nexus7. Maybe I have luck and more than 2 finger prints output.

    Then I have the evidence that Qt works fine.


  • Moderators

    again...this has nothing todo with windows 7 supporting multi-touch points poorly!
    It's just your hardware which only forwards max 2 touch-points to the operating system.



  • [quote author="raven-worx" date="1375694273"]again...this has nothing todo with windows 7 supporting multi-touch points poorly!
    It's just your hardware which only forwards max 2 touch-points to the operating system.[/quote]

    I completely agree, its a hardware problem nothing to do with windows 7 or Qt.



  • ok, only hardware problem, I understand. Then it's time to inform my boss to buy an other screen which supports more than 2 points.

    Do you have any experience with screens supporting more than 2 points?



  • Exactly, it a hardware problem! I tried the fingerprints example on a Windows 8 tablet which supports 5-touch points and it works.

    The "system control" tells you how many touch points are supported.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.