希望能得到大家的帮助4
问题1
在一个窗体的通用过程之中有这样的一个过程。其含义是用另外一个过程调用他,每调用一次就会产生一个图形控件。并且名字会有变化。都是以"symx"开头,但是后面有一个数字来区分不同的控件。为1,2,3.....因此我这里用了一个静态变量U来产生这个数字。
Sub move_y_line()
Dim a
Static U As Integer
Dim name_pc_Ex()
ReDim name_pc_E(text1.text)
name_pc_Ex(U) = "symx" & U
Set a = Controls.Add("vb.picturebox", name_pc_Ex(U))
Set name_pc_Ex(U) = a
name_pc_Ex(U).Height = 15
name_pc_Ex(U).Width=9255
name_pc_Ex(U).Left = 4569
name_pc_Ex(U).Top = 869
name_pc_Ex(U).BackColor = vbRed
name_pc_Ex(U).Visible = True
name_pc_Ex(U).ZOrder (0)
U = U + 1
End Sub
现在的问题是我在该窗体之中再创建一个按钮控件的时候,如果在该控件的click事件之中加入如下代码,用来控制上面产生的图形控件的属性时会报错为:错误的属性方法
sub command1_click()
dim i
for i=0 to text1.text*1
name_pc_Ex(i).top=5678
next
end sub
考虑到name_pc_Ex()这个数组已经定义为一个局部变量了。因此我也尝试过在通用模块之中定义用Global定义name_pc_Ex()数组,并且删除那个过程之中的局部的定义,但是还是有一样的报错,如果把变量U还有a都定义成全局变量,并且删除他们的局部的定义的话,也有同样的报错的。
问题2
假若在一个窗体之中已经创建了一个图形控件,叫picture.现在我想用一个变量来存放该图形控件的名称,以后可以直接对该变量来操作。因此我加入了一个按钮控件。在click事件之中加入了如下的代码。
dim a
a="picture"
a.visible=false
结果运行是报错。说是a没有对应的属性和方法
问题3
假若已经有若干个图形文件叫image1,image2,image3,image4.....我想用一个数组来存放他们的名字。然后再在窗体之中创建一个picturebox控件,假设叫picture1.并且用他的picture1.picture属性来加载这几个图形文件。可否使用如下的代码。
dim image_list(6)'假设只有6个文件
dim i as integer
for i=0 to 5
image_list(i)="image"&i
next
然后在一个按钮控件的click事件之中加入如下代码
if XXXX then
picture1.picture=image_list(0)
end if
if XXXX then
picture1.picture=image_list(1)
end if
if XXXX then
picture1.picture=image_list(2)
end if
可是这样的代码不对,我没有加入图形文件的路径信息,但我不知道如何加入(假设为c:\pic目录)
希望能得到大家的指点。