1、要让一个由shape、line或其它控件组合的图形整体移有两种办法:
a)同时改变组合图形所有控件的坐标,组合控件较多时,操作繁琐。
b)把组全图形放入图片框,只移动图片框即可。
2、所需要工具:vb6
3、在picturebox上搭建图形,picturebox的Appearance属性选择0,BorderStyle选择0,BackColor=&H8000000F&与底背景一致,然后移picturebox的坐标,移动坐标可以使用定时器timer。
4、vb6代码如下:
Option Explicit
Private Sub Command1_Click()
Picture1.Left = 5000
Timer1.Enabled = Not Timer1.Enabled
End Sub
Private Sub Form_Load()
Timer1.Interval = 200
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
If Picture1.Left > 0 Then
Picture1.Left = Picture1.Left - 100
End If
End Sub
5、注意:picturebox中的组合图形的移动,可以先选中一个,然后按住ctrl键用鼠标框选,用ctrl+光标键移动。
创建图形数组:
在表单上先创建一个图形,再复制粘贴,系统会提示是否创建数组控件,选"是",接着继续粘贴,最后改变每个图形的形状位置和着色.
创建文本框和按键:
可以创建四个文本框,分别为图形的左边距left,上边距top,宽度width,高度height和一个确定按钮,把四个文本框的text属性设为0,这样文本框输入的内容就是数值型.
在command1按钮click中输入:
For i = 0 To Shape1.Count - 1
Shape1(i).Move Shape1(i).Left + Text1, Shape1(i).Top + Text2,Shape1(i).Width + Text3, Shape1(i).Height + Text4
Next
调整form1的刻度:
scalemode属性有多个刻度类型,也可以直接输入scaleheight和scalewidth的值.这些属性是相对于表单来说的,例如表单的宽width=1000,再把scalewidth设成500.要控件的宽width加100只需加50就行了,这样的好处就是在不需要精确定位时少输入数据.
测试效果:
在四个文本框中分别输入要增加的左边距,上边距,宽度和高宽,输入负值则反之.点确定按钮.
组合图形放入picturebox
然后移动picturebox即可。