0

Je travaille avec GMap dans C#. Quand je clique sur la carte, je veux obtenir l'emplacement sur l'écran d'où je clique. J'ai un contrôleur de carte appelé myMap. Lorsque je clique sur la carte, un événement appelé myMap_Click (expéditeur d'objet, MouseEventArgs e) est déclenché. Si je place un objet, dans mon cas un formulaire personnalisé, sur l'emplacement e.X, e.Y il ne sera pas placé où je clique sur l'écran.gmap C# point lat long à l'écran position/emplacement

Mon but est de visualiser un formulaire où je clique sur la carte. Je ne m'inquiète pas s'il suit la coordonnée si je pan la carte ou le zoom. Pour l'instant, je veux juste un formulaire personnalisé sur la position que je clique.

Comment puis-je obtenir l'emplacement de l'écran lorsque je clique sur le contoll de la carte?

Cordialement!

Répondre

1

C'est en fait assez simple!

private void myMap_Click(object sender, MouseEventArgs e) 
{ 
    using (Form customForm = new Form()) 
    { 
     customForm.StartPosition = FormStartPosition.Manual; 
     customForm.DesktopLocation = MainMap.PointToScreen(e.Location); 
     customForm.ShowDialog(); 
    } 
}   

Remplacez évidemment les pièces "FormFormFormForm" par vos équivalents.