自学vb过程中的几个问题(另外加分)

1.vb中连接号&和加号+有什么区别?例如下面 txt1.text=txt1.text+txt3.text txt1.text=txt1.text&txt3.text 它们各自的适用范围是什么? 2.图片的路径为:C:\WEXAM\28271001\tp2.jpg,下面这两句程序的功能相同吗?能不能给讲讲App.Path 的用法。 Pic1.Picture = LoadPicture(App.Path + "\tp2.jpg") Pic1.Picture = LoadPicture("C:\WEXAM\28271001\tp2.jpg") 3、上机时遇到一道简单程序题,怎么也做不出来。要求是:在窗体的标签控件上循环显示1,2,3,4.每2秒变化一次。 我是这样编的: Private Sub Form_Load() Timer1.Interval = 2000 i = 1 End Sub Private Sub Timer1_Timer() a = Array(1, 2, 3, 4) Label1.Caption = a(i) If i = 4 Then i = 1 Else i = i + 1 End If End Sub 请给予改正,(不能用for next) 4、我上机题最后一题,是改错题,给的程序把变量用不同的方式定义了2次,所以每次运行都出错。有没有可能题目出错了呀?

第1个回答  2020-05-04
问题1
对于字符串变量,“+”和“&”没有任何区别,如你的例子。
+
可用于进行加法运算,也可用于字符串连接。但是,如果数字和字符之间用+,程序会出错,如:S
=
5
+
"dd"
&
只能用于字符串连接
问题2
LoadPicture
(App.Path
+
"\tp2.jpg")
相对路径,表示在工程或生成的exe目录下装载图片
tp2.jpg
LoadPicture
("C:\WEXAM\28271001\tp2.jpg")
绝对路径:表示在
C:\WEXAM\28271001
目录下装载图片
tp2.jpg
问题3,改为:
Dim
I
As
Long
Private
Sub
Form_Load()
Timer1.Interval
=
2000
Timer1.Enabled
=
True
End
Sub
Private
Sub
Timer1_Timer()
a
=
Array(1,
2,
3,
4)'下标是
0

3
Label1.Caption
=
a(I)
I
=
I
+
1
If
I
=
4
Then
I
=
0
End
Sub
问题4
可能是这种情况:
先定义一个可变数组:
Dim
S()
As
Long
重新定义数组的下标为5:
ReDim
S(5)
As
Long
补充1:
可带else,但要这样写:
If
I
=
4
Then
I
=
0
Else
I
=
I
+
1
或:
If
I
=
4
Then
I
=
0
Else
I
=
I
+
1
End
If
补充2:
Dim
m
As
Integer,
n
As
Long
Dim
m%,
n&
在同一过程中出现这样的语句,肯定出错。
相似回答