Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
488to492
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
488to492
488to492
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Koordinatenproblem, dringend

Koordinatenproblem, dringend
23.09.2004 11:10:48
Jann
Ich habe da mal ein kleines graphisches Problem. Ich habe ein Excel Makro, mit dessen Hilfe ich an bestimmten Positionen Linien auf den Bildschirm zeichnen möchte. Anfangen sollen sie genau da, wo ich mit dem Cursor hinklicke.
Um das zu realisieren arbeite ich mit einer Sub Image1_Click(), in der dann über GetCursorPos die Mausposition abgefragt wird.
Die x, und y-Werte dieser einen Abfrage werden nun als Anfangspunkt für eine Linie genommen (der Endpunkt wird aus einer Tabelle errechnet, die sich auf einem anderen Tabellenblatt befindet.
An sich funktioniert das System ganz vernünftig. Werte werden abgefragt, übernommen und die Linien werden gezeichnet. Allerdings immer etwas verschoben von der CursorClickPosition.
Also habe ich versucht, einfach einen Punkt auf der Karte "zu kalibrieren", indem ich die Abweichung von KlickPosition und dem Punkt über Addition, bzw. Subtraktion der entsprechenden Pixelwerte (die ich durch Ausprobieren rausgefunden habe) korrigiert habe. Dann klappt auch alles, aber eben nur an diesem einen Punkt. Wenn ich woanders auf Image1 klicke, wird die Abweichung immer größer.
Hat jemand von euch eine Idee, wie ich das korrigieren kann ? Wahrscheinlich muss ich da irgendwelche Positionsangaben umrechnen oder so, aber ich habe keine Ahnung wie.
Dass Excel die Koordinaten für das Line Objekt von der oberen linken Ecke des Tabellenblattes aus misst, habe ich schon berücksichtigt. Aber irgendwie scheinen 10 "Linienlängeneinheiten" auch nicht 10 Pixeln von GetCursorPos zu entsprechen.
Kamm mir irgendjemand helfen, oder ein paar Infos zum Excel-Koordinatensystem geben ?

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Koordinatenproblem, dringend
Ulf
Das bekommst du so nicht gebacken, das sich xy auf den Bildschirm bezieht und die Koordinaten der Shapes auf die Tabelle. Das ganze hängt dann auch noch davon ab, wieviele Symbolleisten eingeblendet sind usw.
Mach das ganze in einem Diagrammsheet mit leerem Diagramm, da gehts ganz einfach.
Ulf
AW: Koordinatenproblem, dringend
23.09.2004 12:05:29
Jann
Könntest du mir dann dazu ein paar Tipps geben ? Ich habe da eine Landkarte als Hintergrund. Wenn ich auf einen Punkt auf der Karte Klicke, soll dort eine Linie beginnen.
Wie frage ich denn in einem Diagrammsheet die Cursorposition ab ? Da habe ich ja dann das gleiche Problem mit den Symbolleisten, oder nicht ?
Anzeige
AW: Koordinatenproblem, dringend
Ulf
Füg die Landkarte in ein leeres Diagramm in einem Diagrammsheet ein. Im Klassenmodul
dieses Diagramms gibts das Ereignis:
Private Sub Chart_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
Ulf
AW: Koordinatenproblem, dringend
23.09.2004 12:13:32
Jann
Vielen Dank !Das werde ich gleich mal testen !
AW: Koordinatenproblem, dringend
23.09.2004 12:40:09
Jann
OK, also irgendwie habe ich damit noch meine Probleme. Kannst du mir noch verraten, wie ich das dann richtig in den restlichen Quelltext einbinde ? Wo muss ich die Sub Deklarieren, um dann beispielsweise einfach erstmal sowas zu bekommen:

Private Sub Chart_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
sheets(1).cells(1,1)=Xpositiondesmausklicks
End Sub

Woher weiß dei Sub eigentlich, auf welches Diagramm sie sich beziehen muss ?
Anzeige
AW: Koordinatenproblem, dringend
Ulf
In einem Diagrammsheet hast du gewöhnlich nur ein Chart. Das Ereignis wird ausgelöst, wenn du auf das Diagramm klickst, erstma egal, ob Rechts- oder Linksklick.
Sheets(1) muss dann aber eine Tabelle sein!

Private Sub Chart_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
sheets(1).cells(1,1)=X
End Sub

Ulf
AW: Koordinatenproblem, dringend
23.09.2004 12:52:07
Jann
Vielen Dank ! Da gehts doch gleich weiter mit dem Testen...
AW: Koordinatenproblem, dringend
23.09.2004 13:14:11
Jann
OK, also so weit funktioniert das. Allerdings ist meine Landkarte größer, als das die Chart-Fläche. Das heißt, die Landkarte wird total deformiert angezeigt (wenn ich sie als Hintergrundbild nehme). Lege ich sie normal als Grafik davor, dann bleibt sie nach jedem normalen Klick "am Cursor hängen", als wenn ich sie verschieben wollen würde.
Ich habe auch noch keine Möglichkeit gefunden, das Chart größenmäßig anzupassen. Geht das irgendwie ?
Anzeige
AW: Koordinatenproblem, dringend
Ulf
Das Chart im Diagrammsheet wird immer in max. Größe angezeigt. Du musst also deine
Landkarte in einem Bildbearbeitungsprogramm auf das entsprechende Maß bringen.
Ulf
AW: Koordinatenproblem, dringend
23.09.2004 13:59:26
Jann
OK, ich mache Fortschritte. Die Grafik ist da, Linien zeichnen funktioniert auch - nur leider nicht an der Cursor-Klick-Position. Das gleiche Problem, wie vorher auch. Auch dieses Mal kann ich über Addition und Subtraktion von einzelnen Werten machen, dass das mit dem Klicken wenigstens an einer Stelle auf dem Bild genau den Startpunkt für die Linie gibt.
Je weiter ich mich von diesem "Kalibrierungspunkt" entferne, desto größer werden auch wieder die Abweichungen von Linienanfang und Klick-Position. Was mache ich da falsch ?
Anzeige
AW: Koordinatenproblem, dringend
Ulf
Das genau zu erklären ist mir zu kompliziert. Du musst einen Korrekturfaktor verwenden,
der ziemlich genau bei 1.338842975 liegt.
Ulf
AW: Koordinatenproblem, dringend
23.09.2004 14:21:31
Jann
Das hilft mir doch schonmal etwas weiter, zu wissen, dass es da sowas gibt. Wo kann ich denn genauere Infos dazu bekommen, hast du da noch einen netten Linktipp zu ?
AW: Koordinatenproblem, dringend
Ulf
Keine Ahnung, ob es da im www was gibt. K.Rola hier aus dem Forum hat dazu mal eine perfekte Lösung auf den Server gestellt, einen Link habe ich allerdings nicht mehr.
Ich möchte das Thema jetzt auch beenden, da ich auch keine weiteren Infos geben kann.
Ulf
AW: Koordinatenproblem, dringend
23.09.2004 14:30:00
Jann
OK, alles klar. Vielen Dank für deine Hilfe so weit !
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige