张志晨VB实例教程之字符串转换成变量名.doc
张志晨VB实例教程之字符串转换成变量名
先看下面的代码:
Private Sub Command1_Click() str1 = "a"
str2 = "bb"
str3 = "ccc"
For i = 1 To 3
strr = "str" & CStr(i)
che = "Check" & CStr(i)
If Me.Controls.Item(che).Value = 1 Then
condition = condition + strr
End If
Next i
Print condition
End Sub
想实现的意图是:窗口有三个复选框和一个按钮,通过循环的方式判定复选框是否被选定,如果选定,则将选定复选框对应编号的字符串连接到一起。例如选定check1,最后输出"a";选定check1和check3,最后输出"bbccc"。现在的程序只能输出"str1"及"str1str3"。
问题是:如何让系统将strr中的值视为变量名,而不是简单的字符串。
在网上查找,很多网友都对此无可奈何。
再如有2个变量
a="王"
b="张"
想接受到一个字符串 c="a"
有没有什么函数XX , d=XX(c) ,结果d="王"
这种
方法
快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载
在 Asp中 是 d=Eval(c) 达到。
在flash中用evl()可以实现,如evl(”mc”+i),或者用_root[“mc”+i]。
这真是一个困扰人的问题。叫人恼火~
还有例如:
dim tg1
tg1="123456"
t=1
xt="tg" & t
作者想要xt的值是"123456"而不是"tg1"。却无法实现。用VBS可以实现:
FoxPro: xt = eval("tg"+str(t,1))
VBS: xt = eval("tg" & t)
VB办不到~叫人恼火~
有人想
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
如下思路,有一个变量
dim abcd as string
abcd="Hello"
需要实现两个字符串组合起来成为变量的功能。如
msgbox("ab" & "cd")
返回 Hello
那么在 VB中如何实现将字符串转换成变量名,并通过哪种方式可以来调用此变量,
经过反复查找资料和实验,有点眉目,现在写出来,以为贡献。
一、将字符串转换成控件对象变量名:Controls("字符串" & 1) 比如有三个textbox控件,名称分别是:text1、text2、text3,现在想通过for循环将这三控制件值赋给一个数组,如何来读取这三个控制的值呢,
代码如下:
Dim str as string
Str="Text" & 1
for i=1 to 3
s(i)=Controls(str)
next i
二、将字符串转换成非控件对象变量名CallByName(Me, "字符串", vbGet)
Public A As String = "王" '注意一定要声明为全局变量,并为 Public
Public B As String = "张"
Private C As String
Private Sub Comm()
MsgBox(CallByName(Me, "A", vbGet))
MsgBox(CallByName(Me, "B", vbGet)) End Sub
以下例子,从文本框接受字符串,然后转换为变量名,这样就可以查看或者调用此变量的值。
哦,这个例子,是我留给你的作业。做不上别当我徒弟了~哈哈,我是不是有点严格了……