Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [Gelöst] Cursor-Kontrolle beim Touchpad mit USB-Anschluss (https://www.delphipraxis.net/138096-%5Bgeloest%5D-cursor-kontrolle-beim-touchpad-mit-usb-anschluss.html)

hathor 3. Aug 2009 16:14


[Gelöst] Cursor-Kontrolle beim Touchpad mit USB-Anschluss
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
ich habe seit einigen Tagen ein Touchpad mit USB-Anschluss - es funktioniert parallel zu einem evtl. vorhandenen Notebook-Touchpad oder Thinkpad-TrackPoint (X61T). Diesen TrackPoint mag ich garnicht, deshalb und auch aus anderen Gründen (ist für einen Behinderten gedacht zum Testen) diese Anschaffung (ca. 35-40EUR).
Folgendes Problem:
Der Weg vom linken bis zum rechten Rand des Touchpads entspricht etwa 40% der Bildschirmbreite.
Um vom linken Bildschirmrand bis zum rechten zu kommen, muss man also fast 3x über das Touchpad streichen.
Das ist sehr lästig und störend.
Es wurde keine Software mitgeliefert. Einstellmöglichkeiten sind deshalb keine vorhanden.
Von WIN XP wird ein Allround-Driver geladen.
Ziel ist, dieses Touchpad zum Anwählen einer eigenen Bildschirmtastatur mit Sprachausgabe zu nutzen.
Wie realisiere ich es, dass bei schnellen Touchpad-Bewegungen eine schnelle Cursorbewegung erfolgt (ganze Touchpad-Breite = ganze Bildschirm-Breite, vertikal entsprechend) und bei langsamen Touchpad-Bewegungen eine langsame, zielgenaue Wegumsetzung (minimale Genauigkeit ca. 5 mm) auf dem Bildschirm erfolgt?
Einen eigenen Treiber möchte ich nicht schreiben, denn die Cursorkontrolle muss nur im eigenen Programm wirksam sein.
Eine Vorstellung, wie ich das umsetzen kann, habe ich, aber ich möchte im Moment darüber noch nichts schreiben, um nicht jemanden auf einen falschen Weg zu lotsen...
Vielleicht hat jemand eine viel bessere Idee...
Für Brainstorming wäre ich sehr dankbar!

Vielleicht hilft mir das hier weiter:
http://www.synaptics.com/sites/defau...00275-01rA.pdf

OldGrumpy 3. Aug 2009 21:29

Re: Cursor-Kontrolle bei einem Touchpad mit USB-Anschluss
 
Auf der Synaptics Website gibts die entsprechenden Softwarepakete zum Download. Da kann man eine ganze Menge konfigurieren.

hathor 4. Aug 2009 13:07

Re: Cursor-Kontrolle bei einem Touchpad mit USB-Anschluss
 
Das Problem ist gelöst.
Ich habe nun eine funktionierende, brauchbare Lösung gefunden:

Delphi-Quellcode:
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
var diffx, diffy : Integer;
begin
  if (Msg.message = WM_MOUSEMOVE) then
   begin
     label3.caption:= 'Mouse.CursorPos.X : '+Format('%d', [Mouse.CursorPos.X]);
     label4.caption:= 'Mouse.CursorPos.Y : '+Format('%d', [Mouse.CursorPos.Y]);
        diffx:= Abs(oldX-Mouse.CursorPos.X);
        diffy:= Abs(oldY-Mouse.CursorPos.Y);
     Label6.Caption:= 'DiffX: '+ IntToStr(diffx);
     Label7.Caption:= 'DiffY: '+IntToStr(diffy);

    if (diffx>10) or (diffy>10) then
     BEGIN
        oldX:=Mouse.CursorPos.X;
        oldY:=Mouse.CursorPos.Y;
        SetCursorPos(Mouse.CursorPos.X +diffx div 10,Mouse.CursorPos.Y +diffy div 10);
     END;
    end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:04 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz