Hello to all, I am new to this forum. Using System.MouseX and System.MouseY will give pixel x y location
based from window form. Is there a command to get x y pixel from Canvas datum instead from Window form.
What do you really want to do ?
The Canvas Left / Right position or a Cursor position ?
In the first case: use .Left and .Top.
In the latter case, you have to compute the text length and add the start text x value
I had a Map placed in the canvas at one corner of the screen. I would like to plot Lat and long on the map by moving the cursor and calculate using the x y pixel differential. It works provided I subtracted the differential pixel from the screen edge to the Canvas edge.
But I think it will not give the right answer if I run the program in another computer with different screen size.
Basically, I am trying to get cursor position x y in the canvas area.
OK, you mean the Mouse Cursor (the arrow icon, not the text cursor).
First idea for debug:
Add a MouseMove Event to your Canvas and the code:
Sub MouseMove(X As Integer, Y As Integer)
TF_Info.Text = "x,y: " + Str(X) + "," + Str(Y)
End Sub
Also add a TextField
and name it TF_Info
.
Run,
Move the Mouse above the Canvas and enjoy the x,y Mouse locations in the TF_Info
TextField.
Now you can continue to program (I hope). When your tests are done, you can remove the TextField and the MouseMove Event Code (above) that you use as a debugging way.
Great, It works. Thanks a lot. I don’t know how I miss that after long hours of search in the net.
Better read the docs
It escapes me too until I found it.