VB画图,LineTo和MoveToEx坐标问题???

我用picSheet.Scale(0,200)-(100,-200)自己定义坐标,用Line划线时,是自己设定的坐标。但是用LineTo和MoveToEx划线时,自己定义... 我用picSheet.Scale (0, 200)-(100, -200)自己定义坐标,用Line划线时,是自己设定的坐标。但是用LineTo和MoveToEx划线时,自己定义的坐标却没用,为什么,谢谢了先
picSheet.Scale (0, 200)-(100, -200)
vDRP = MoveToEx(picSheet.hdc, xData(MAX), yData(MAX), vPt)
vDRP = LineTo(picSheet.hdc, xData(MAX + 1), yData(MAX + 1))
这里X和Y都存储在数组xData和yData中,
展开
 我来答
jjuanyk
2009-03-24 · TA获得超过478个赞
知道答主
回答量:88
采纳率:0%
帮助的人:117万
展开全部
lineto,movetoex都是API函数,都是以像素为单位的,你只能将你的坐标转换成像素单位代入才有效....

你要把X坐标这样变换一下:picSheet.ScaleX(x, vbUser, vbPixels),Y坐标这样变换:picSheet.ScaleY(y, vbUser, vbPixels)

就是说你的代码要这样修改一下
vDRP = MoveToEx(picSheet.hdc, picSheet.ScaleX(xData(MAX), vbUser, vbPixels), picSheet.ScaleY(yData(MAX), vbUser, vbPixels), vPt)
vDRP = LineTo(picSheet.hdc, picSheet.ScaleX(xData(MAX + 1), vbUser, vbPixels), picSheet.ScaleY(yData(MAX + 1), vbUser, vbPixels))
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式