2010-11-25 3 views
2

Ich habe Win 7 OS auf meinem Computer und habe einen Multitouch-fähigen Monitor, der bis zu 2 gleichzeitige Berührungen unterstützt.Windows 7, Multitouch-Ereignisse können nicht auf zwei verschiedenen Steuerungen empfangen werden.

Ich habe MFC Dialog-Anwendung mit zwei Schiebereglern erstellt und versuche, sie gleichzeitig mit zwei Fingern zu bewegen, kann aber nur einen Schieberegler verschieben. Wenn ich das Dialogfeld mit zwei Fingern berühre, erhält es zwei Berührungen, aber zwei verschiedene Schieberegler erhalten keine simultanen Berührungen.

Auf MS Paint kann ich mit zwei Fingern zeichnen.

Ich habe auch versucht, für Multi-Touch-Anwendung zu suchen mehr als eine Kontrolle beteiligt, aber keine finden konnte, und ich beginne, wenn seine möglichen überhaupt auf Windows 7

Dank zu wundern.

Antwort

1

Sie brauchen nicht nur Ihr Betriebssystem, um Multitouch zu unterstützen, sondern auch Ihre Steuerelemente. Hast du die Hands On Labs für MFC und Multitouch gemacht? http://channel9.msdn.com/learn/courses/Windows7/Multitouch hat mehrere native und MFC-Beispiele.

Wenn Sie in Ihrer App kein echtes Bedürfnis nach zwei Slidern haben, die sich gleichzeitig bewegen, probieren Sie es einfach aus, versuchen Sie es etwas anders, wie zoomen durch Zerren oder Schwenken durch Ziehen mit zwei Fingern, Drehen usw. Wenn Sie mehrere unabhängige Berührungen wünschen (dh nicht als Pinch-Zoom interpretiert werden), ist der Quellcode für Spiele das beste Beispiel.

+0

Hallo Kate, Danke für den Link. – dev

+0

Danke Kate. Eigentlich muss ich zwei Schieber gleichzeitig bewegen. Ich habe das Paint Beispiel versucht und es funktioniert gut, aber der Fall von 2 Schieberegler funktioniert nicht. Ich glaube, dass im Fall von Farbe nur ein Controller ein Berührungsereignis empfängt, und in meinem Fall gibt es zwei Schieberegler, die ich verschieben möchte. Nur ein Schieberegler empfängt ein Berührungsereignis, selbst wenn ich versuche, beide gleichzeitig zu bewegen. Auch ein Schieber erhält zwei Berührungen. Bitte lassen Sie mich wissen, wenn Sie ein Beispiel kennen, das mehr als einen Controller gleichzeitig berührt. Lassen Sie es mich wissen. Danke noch einmal. – dev

1

Wenn die Verwendung von WPF möglich ist, bietet das "Surface Toolkit für Windows Touch" eine ganze Reihe von touchoptimierten Steuerelementen, die gleichzeitig verwendet werden können.

Sie könnten vielleicht die WPF-Steuerelemente in Ihrem MFC-UI hosten, aber beachten Sie, dass alle WPF-Steuerelemente in einem einzigen HWND sein müssten - Win7 hat eine Betriebssystembeschränkung, dass Multitouch nur mit einem HWND gleichzeitig ausgeführt werden kann .

+0

Danke Robert für dich antworten. Ich werde definitiv Ihren Vorschlag versuchen. – dev