这是因为API函数中的坐标并不受VB窗体中自设的坐标系统影响的,不管你的自定义坐标怎么设,CreateEllipticRgn函数都是把窗口的左上角定为(0,0),右下角则是(Form1.Width/15, Form1.Height/15),坐标单位为像素。而且还有一点很重要的哦,就是窗口的标题、菜单栏、状态栏、窗口边框等等也是包括在上面那个区域里的哦,所以你要计算窗口的中心就必须考虑这些因素。此外,还要考虑到如何把你的自定义坐标转化为像素。建议你不要使用自定义坐标,而是直接用像素作为坐标单位,这样会简单得多。
你应该使用API函数Ellipse画圆,跟CreateEllipticRgn使用同样的参数,小一点点,这样就很容易对正了