vb2005动态增加\删除文本框并取值

zbfeyan 2012-07-13 11:33:59
我用vb2005做的程序中有个输入信息的窗体,有时需要同时输入几条信息,但每次只输入的信息条数不一定相同,所以需要在vb2005窗体上根据需要动态增加和删除文本框并取值,我在网上找的代码(如下)在vb2005中出错,请高手帮忙!!


首先在窗体上放一TextBox控件,使用默认名称Text1,然后在属性窗口将Text1的Index属性设为0,接下来的事都在代码窗口中完成。整个代码窗口的代码如下:

Option Explicit
Dim x As Integer 'Text1控件数组索引变量

Private Sub Command1_Click() '添加元素
x = x + 1
Load Text1(x)
Text1(x).Left = Text1(x - 1).Left + Text1(x - 1).Width + 10
Text1(x).Visible = True
End Sub

Private Sub Command2_Click() '删除元素
If x >= 1 Then
Unload Text1(x)
x = x - 1
Else
MsgBox "不能再删除了,只剩下原始文本框控件了", vbInformation + vbOKOnly
End If
End Sub

Private Sub Form_Load()
x = 0
End Sub

为使你更好理解动态添加和删除控件元素,我这里没有使用控件数组的Count以及Item等属性。
...全文
111 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
skigil 2012-07-15
  • 打赏
  • 举报
回复
以下是在手打的
假定你已经定义了一个原始的名为TextBox的输入控件

dim TxtBox() as textbox
public Sub Add(Num as integer)
redim TxtBox(Num)
TxtBox(0)=TextBox
for i as integer=1 to Num-1
TxtBox(i)=new textbox
with TxtBox(i)
.location=new point(50,i*50+20)
.width=200
end with
next
me.controls.addrange(TxtBox)
end sub
zbfeyan 2012-07-14
  • 打赏
  • 举报
回复
请问能帮我转换成vb2005的代码吗?
kxyzjm62 2012-07-14
  • 打赏
  • 举报
回复
你炒的代码不是.net的,是vb6的
123工艺品 2012-07-13
  • 打赏
  • 举报
回复

你可以直接定义个变量为textbox控件

看你代码中,没有定义text1

或者添加控件应这样写:
例如在panel控件上增加控件,应该为 panel.controls.add(控件)

另外,,请描述一下你的程序是如何出错的?
zbfeyan 2012-07-13
  • 打赏
  • 举报
回复
出错情况如下:
1: Text1(x):"类system.windows.froms.textbox"没有默认属性,因此无法被索引
2: Unload(Text1(x)):没有声明名称"Unload"

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧