VB中picture问题

来源:百度知道 编辑:UC知道 时间:2024/05/15 19:51:40
picture1控件一个,大小7095*7095,我以中心点划了两条直线横线代表X轴与竖线代表Y轴,自建坐标系(-400,400)-(400,-400),原点也就是两直线的交叉点,现在我想放一支笔上去,笔尖处为当前坐标点.让它随着当前坐标的改变而移动.坐标为(X轴当前坐标,Y轴当前坐标)如(15,19)中15为X轴坐标,19为Y轴坐标,这个坐标会改变,那支笔也应该相应的移动。请问如何实现?
当然是要代码了撒....
那两个属性设为多少,我现在的是scalewidth为11.978,scaleheight为13

'控件:
'一个picturebox 名为 P 画图的地方
'两个Textbox 名为 txtX 和 txtY 用于输入坐标
'一个按钮 名为 cmdDraw
'一个imagebox 名为 imgPen 里面放上你的笔的图片,笔尖要顶在imgPen左上角,如果笔尖在其它地方,你自己改下坐标就OK了

'弄好以后把代码贴上,两个框框里面输入数值,点显示就OK了

Private Sub cmdDraw_Click()

'如果你把pic作为imgPen的容器,可以用这个代码,就不用重新画了,直接移动就好了
'imgPen.Move 400 + txtX, 400 + txtY

'下面是直接向pic上画图代码

P.Cls '清除pic上的内容
P.Line (0, 400)-(800, 400) '画坐标
P.Line (400, 0)-(400, 800)
P.PaintPicture imgPen.Picture, 400 + txtX, 400 + txtY '把图片画到pic上
End Sub

Private Sub Form_Load()
P.AutoRedraw = True
P.Move P.Left, P.Top, 7095, 7095 '重新设置P的位置
P.ScaleHeight = 800 '设置scale值
P.ScaleWidth = 800
P.Line (0, 400)-(800, 400) '画坐标
P.Line (400, 0)-(400, 800)
End Sub