VB 运行时如何使picture控件随窗体放大缩小

来源:百度知道 编辑:UC知道 时间:2024/06/04 14:48:34
我在PictureBox里画实时曲线, 问题是在运行时,当鼠标点窗体右下角调整其大小时,怎样才能让picture控件及曲线等比例放大或缩小呢?请前辈们指点。
帮人帮到底吧大侠~ 你的程序可以实现图片框 缩放,但我加了如下语句,显示坐标系, 坐标系不随窗体缩放啊,你再提示一下吧 谢谢
Private Sub picture1_Click()
Cls
Picture1.Scale (-110, 110)-(110, -110)
Picture1.CurrentX = 105: Picture1.CurrentY = 20: Picture1.Print "x"
Picture1.CurrentX = 10: Picture1.CurrentY = 105: Picture1.Print "y"
For i = -100 To 100 Step 20
If i <> 0 Then
Picture1.CurrentX = 1: Picture1.CurrentY = 7: Picture1.Line -(i, 0)
Picture1.CurrentX = i - 5: Picture1.CurrentY = -5: Picture1.Print i / 10
Else
Picture1.CurrentX = -3: Picture1.CurrentY = -5: Picture1.Print 0
End If
Next i
For i = -100 To 100 Step 20
If i <> 0 Then
Picture1.CurrentX = -15: Picture1.CurrentY = i + 5: Picture1.Print i / 10
Picture1.CurrentX = 7: Picture1.CurrentY = i: Picture1.Line -(0, i)
End If
Next i
End Sub

在窗体Resize事件中根据窗体的宽度改变控件的宽高就行了。
例如
Private Sub Form_Resize()
picture1.width=form1.width/10
picture1.height=form1.height/10

这样控件根据窗体的大小缩放。同样,相对位置也可以这样

Private Sub PicPrintZB()
Picture1.Cls
Picture1.Scale (-110, 110)-(110, -110)
Picture1.CurrentX = 105: Picture1.CurrentY = 20: Picture1.Print "x"
Picture1.CurrentX = 10: Picture1.CurrentY = 105: Picture1.Print "y"
For I = -100 To 100 Step 20
If I <> 0 Then
Picture1.CurrentX = 1: Picture1.CurrentY = 7: Picture1.Line -(I, 0)
Picture1.CurrentX = I - 5: Picture1.CurrentY = -5: Picture1.Print I / 10
Else
Picture1.CurrentX = -3: Picture1.CurrentY = -5: Picture1.Print 0
End If
Next I
For I = -100 To 100 Step 20
If I <> 0 Then
Picture1.CurrentX = -15: Picture1.CurrentY = I + 5: Picture1.Print I / 10
Picture1.CurrentX = 7: Picture1.CurrentY = I: Picture1.Line -(0, I)
End If
Next I
End