我在学习VB中对坐标理解不了.比如form1.scaleleft=-10,就显示横向右移10个单位
而form.scaletop=10,就表示纵向下移10个单位,为什么scaleleft要为负值?

解决方案 »

  1.   

    其实学习VB对于坐标不用研究太复杂因为一般情况来说,我们对坐标的操作无外乎:
    1》布局时,摆放控件的位置时要用到
    2》在Picture或Form或Printer等对象上进行画线和字时需要用到其实你完全可以不用改变系统坐标来实现负坐标,假定(500,500)为零点,那么你只要定义两个变量来表示任何点的相对位移:
    OffsetX = 500        OffsetY = 500
    如:点(100,100)的坐标就是:(OffsetX+100,OffsetY+100)即 (600,600)
    负轴的点也一样(-150,-300)的坐标就是:
    ( [OffsetX+(-150)],[OffsetY+(-300)] )即 (350,200)还有什么不理解的吗???
      

  2.   

    请指点:为什么scaleleft为负会使Y轴右移.而scaletop为正值就可以使X轴下移
    是不是系统就这样规定吗?
    恳请指点!!谢谢
      

  3.   

    Gutta(冯大狂):谢谢你,你的意思能理解.我看书上的例子,画一个坐标.代码如下:
    form.scaleleft=-200:form.scaletop=250
    line(-200,0)-(300,0)
    line(0,250)-(0,150)就是不理解:form.scaleleft=-200
    请指点,谢谢