vb一道关于列表框的问题,急
题目:在窗体上画一个文本框,名称为text1,text属性为空白。再画一个列表框,名称为L1,通过属性窗口向列表框中添加4个项目,分别为“AAAA”,“BBBB”,“CC...
题目:在窗体上画一个文本框,名称为text1,text属性为空白。再画一个列表框,名称为L1,通过属性窗口向列表框中添加4个项目,分别为“AAAA”,“BBBB”,“CCCC”,“DDDD”。程序运行后,在文本框中输入一个字符串,如果双击列表框中的任一项,则把文本框中的字符串添加到列表框中。
代码如下:
Dim i As Integer
Private Sub L1_dblClick()
For i = 0 To 3
If List1.Selected(i) = True Then
List1.AddItem a
End If
Next
End Sub
Private Sub Text1_Change()
a = Text1.Text
End Sub
说是实时错误424,但我看不出来哪儿是错的,请指点 展开
代码如下:
Dim i As Integer
Private Sub L1_dblClick()
For i = 0 To 3
If List1.Selected(i) = True Then
List1.AddItem a
End If
Next
End Sub
Private Sub Text1_Change()
a = Text1.Text
End Sub
说是实时错误424,但我看不出来哪儿是错的,请指点 展开
6个回答
展开全部
问题:1 列表框名为L1, 你却有时用L1,有时用list1
2 a要定义全局变量
Dim i As Integer
Dim a As String
Private Sub L1_dblClick()
For i = 0 To 3
If L1.Selected(i) = True Then
L1.AddItem a
End If
Next
End Sub
Private Sub Text1_Change()
a = Text1.Text
End Sub
2 a要定义全局变量
Dim i As Integer
Dim a As String
Private Sub L1_dblClick()
For i = 0 To 3
If L1.Selected(i) = True Then
L1.AddItem a
End If
Next
End Sub
Private Sub Text1_Change()
a = Text1.Text
End Sub
更多追问追答
追问
列表框名为L1, 你却有时用L1,有时用list1--我给忘了这回事儿,平常都是list1
追答
1 列表框名为L1, 你却有时用L1,有时用list1
2 a要定义全局变量
这2点都很重要,否则得不到你要的结果
展开全部
错误424意思是对象未定义.你的列表框名称为L1, 那么List1.Selected.... List1.Additem中的list1就是未定义的对象了,把它们改成L1.Selected....L1.Additem
还有你的变量a也应该先定义一下,在Dim i As Integer下面加上Dim a As String
还有你的逻辑也有点乱,你把L1.AddItem a改为L1.AddItem Text1.Text,那么Sub Text1_Change()这一过程,以及变量a根本不需要
还有你的变量a也应该先定义一下,在Dim i As Integer下面加上Dim a As String
还有你的逻辑也有点乱,你把L1.AddItem a改为L1.AddItem Text1.Text,那么Sub Text1_Change()这一过程,以及变量a根本不需要
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
上面声明的应该是a
dim a as string
Private Sub L1_dblClick()
dim i as integer '这里声明 i
For i = 0 To 3
If List1.Selected(i) = True Then
List1.AddItem a
End If
Next
End Sub
dim a as string
Private Sub L1_dblClick()
dim i as integer '这里声明 i
For i = 0 To 3
If List1.Selected(i) = True Then
List1.AddItem a
End If
Next
End Sub
更多追问追答
追问
为什么?我就搞不懂,有的时候声明放前面,有的时候放后面?
追答
哦,你应该掌握的知识是:变量的作用域:
1,在过程里声明的变量,叫做局部变量,它只能在该过程里起作用:
例如:
Private sub a1()
dim a as integer '这个就是只能在a1里起作用的局部变量
a=5
print a
end sub
Private sub a2()
print a '在这里这个变量不是a1里的?????不能使用a1里的
end sub
2,如果要在窗体的任何过程里都能使用同一个变量,那么要声明为模块变量
Private a as integer
Private sub a1()
a=5 '在这里这个变量是模块变量,a1 a2里都能使用
print a
end sub
Private sub a2()
a = a + 100
print a '在这里这个变量是模块变量,a1 a2里都能使用
end sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
列表框名称是L1,你代码里面的list1.Selected(i)这类的list1 都应该改成 L1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Option Explicit
Dim i, a
Private Sub List1_DblClick()
For i = 0 To 3
If List1.Selected(i) = True Then
List1.AddItem a
End If
Next i
End Sub
Private Sub Text1_Change()
a = Text1.Text
End Sub
我试着没错啊
Dim i, a
Private Sub List1_DblClick()
For i = 0 To 3
If List1.Selected(i) = True Then
List1.AddItem a
End If
Next i
End Sub
Private Sub Text1_Change()
a = Text1.Text
End Sub
我试着没错啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询