i used to work in VB, but now in C#. But they're very similar, since they're both .NET. Check the Cursor class. It should have an X and a Y property. Those properties give you screen cordinates, you'll have to translate them to form cordinates using PointToClient. As for moving the object after a user clicks it? Off the top of my head, you would use the MouseMove event of the control itself. Use a boolean to keep track of whether a user has clicked it yet.