Live-Forum - Die aktuellen Beiträge
Datum
Titel
19.04.2024 12:23:24
19.04.2024 11:45:34
Anzeige
Archiv - Navigation
664to668
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
664to668
664to668
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Mausposition zu top & left im Worksheet

Mausposition zu top & left im Worksheet
10.09.2005 10:19:52
Mueller
Hallo,
ich habe eine Frage, die mich schon seit langem quält:
Gibt es eine Möglichkeit, die Position der Maus auf dem
Bildschirm in die Top- & Left Koordinaten des Tabellen-
blattes umzurechnen?
Bei den OLE-Forms geht das ja simpel über das MouseMove
Ereigniss. Fügt man aber z.B. ein Frame ein, dann ist
es leider nicht möglich, über diesem Frame Shape Objekte
zu zeichnen- es liegt leider immer im Vordergrund.
Anderer Ansatz:
Über API Funktionen bekomme ich die Position der Maus
aber es ist dann sehr schwierig, die Top & Left Koordinaten
zu berechnen. Vor allem, bei unterschiedlichen Zoomfaktoren
oder wenn der benutzer im Worksheet scrollt.
Meine Frage:
Gibt es für ein Worksheet ClientToScreen oder ScaleX/YY
funktionen? Oder hat jemand eine andere Idee?
Vielen Dank!

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mausposition zu top & left im Worksheet
10.09.2005 10:56:41
Herbert
Hi,
was ist der Zweck der Aktion, vielleicht gibt es eine andere Lösung.
mfg Herbert
AW: Mausposition zu top & left im Worksheet
10.09.2005 13:32:11
Mueller
Ich bräuchte diese Funktion zum interaktiven Bewegen von
Zeichnobjekten auf dem Tabellenblatt.
Der Benutzer klickt ein Shape an & bewegt es
mit der Maus über das Tabellenblatt.
AW: Mausposition zu top & left im Worksheet
10.09.2005 18:32:30
Herbert
Hi,
wenn du ein Shape anklickst, kannst du über Application.Caller die aktuelle Position
des Caller auslesen, Shapes kannst du ja ohnehin nur innerhalb der Tabelle verschieben.
Vielleicht wär es günstiger, du beschreibst mal, was du erreichen willst.
mfg Herbert
AW: Mausposition zu top & left im Worksheet
10.09.2005 13:40:55
Thomas
Hallo,
schau Dir mal den "xlEventServer" (Freeware) auf meiner Webseite an. Vielleicht kannst Du ihn ja verwenden.
Gruss
Thomas
Risi Thomas Softwareentwicklung
Addins - Datenbanklösungen - Komponenten - RTDServer

Anzeige
AW: Mausposition zu top & left im Worksheet
10.09.2005 14:28:25
Mueller
Vielen Dank,
das sieht sehr vielversprechend aus! Ich werde mir das mal in Ruhe ansehen.
Das MouseWheelEvent interessiert mich auch sehr.
Das MouseMove Ereignis für das Worksheet könnte vielleicht auch für folgende Idee hilfreich sein:
Ein OleObject z.B. ein Image auf dem Worksheet erstellen,
dafür ein MouseMove Ereignis deklarieren, das sowohl
die Koordinaten innerhalb des Image in Left & Top festhält als auch über
die API GetCursorPos die reale Cursorposition.
Das Image wird zuerst versteckt, weil es sonst die Shapes überlagert.
Will man die Position des Mauszeigers auf dem Tabellnblatt haben,
dann blendet man es kurz ein, bis es das MouseMove Ereignis auslöst
und damit beide Koordinaten bekannt werden. Dann versteckt man es wieder.
um die Skalierung berechnen zu können, müssten allerdings 2 Punkte abgefragt
werden. Da hakt es im Moment bei mir an einer Stelle:
Die API SetCursorPos löst kein MouseMove Ereignis aus.
Wäre aber sehr praktisch, wenn man den Cursor kurzzeitig per API um einen
ausreichenden Wert versetzen könnte und somit 2 bekannte Koordinaten
in beiden Systemen hätte. Dann sollte die Umrechnung eigentlich sehr genau
gelingen. Zumal auch die Left & Top koordinate des Image bekannt ist. Damit
könnte man auch gleeichzeitig die Offsets ermitteln.
Bisher ist es mir aber noch nicht gelungen, via RaiseEvent das MouseMove Ereignis
des Image auszulösen. Gibt es da eine Möglichkeit?
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige