Einzelnen Beitrag anzeigen

Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#92

AW: Google Maps über COM (Component Object Model)

  Alt 28. Jun 2011, 20:38
Hallo Christoph,

Ja, das geht - wenn auch wieder nur über die Trickkiste.
Leider bietet (T)OverlayView keine Methode oder Eigenschaft, um die Größe oder Position des Overlays zu beeinflussen.

Schaut man sich allerdings TUSGSOverlay aus der Demo SimpleOverlay an, kann man feststellen, daß in der Methode OnAdd ein DIV-Container erstellt wird, der das Overlay-Bild aufnimmt und dessen Größe und Position in der Methode Draw an die gewünschten Koordinaten angepaßt wird.

Die erste Möglichkeit besteht also darin, den DIV-Container einfach auf der Karte an die gewünschte Stelle zu verschieben.
Bei der zweiten Möglichkeit wird das Overlay mit
Delphi-Quellcode:
Overlay.SetMap(TMap(nil));
//...
von der Karte entfernt, worauf die Methode OnRemove aufgerufen wird. Anschließend wird das Overlay einfach wieder der Karte zugeordnet
Delphi-Quellcode:
Overlay.SetMap(Map);
//...
, worauf wieder OnAdd und Draw durchlaufen werden und damit die Möglichkeit besteht, das Overlay an einer anderen Stelle zu positionieren.
Thomas Nitzschke
Google Maps mit Delphi
  Mit Zitat antworten Zitat