这种功能VB做得到吗?急急急!!!

xiangyan 2004-07-12 08:32:55
例如:
optSELF_HELP_SACK_(0) = True
optSELF_HELP_SACK_(1) = True
optSELF_HELP_SACK_(2) = True
optSELF_HELP_SACK_(3) = True
optSELF_HELP_SACK_(4) = True
optSELF_HELP_SACK_(5) = True
.....
optSELF_HELP_SACK_(999) = True

即控件名字来源是个“变量”
...全文
94 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Chice_wxg 2004-07-12
  • 打赏
  • 举报
回复
呵呵,不行。VB不是解释型的语言(不过VFP或VBScript/JavaScript可以)


不过你可以试试这种方法:
(我从别处copy来的,我没测试,不过看起来没问题)

Option Explicit
Private Declare Function EbExecuteLine Lib "vba6.dll" (ByVal pStringToExec As Long, ByVal Unknownn1 As Long, ByVal Unknownn2 As Long, ByVal fCheckOnly As Long) As Long

Public Function ExecuteLine(sCode As String, Optional fCheckOnly As Boolean) As Boolean
ExecuteLine = EbExecuteLine(StrPtr(sCode), 0&, 0&, Abs(fCheckOnly)) = 0
End Function

Private Sub Command1_Click()
ExecuteLine "Dim X As Long, Y As Long"
ExecuteLine "x = 2"
ExecuteLine "y = 3"
ExecuteLine "msgbox " & Text1.Text
End Sub

Private Sub Form_Load()
Text1.Text = "x+y"
End Sub
xiangyan 2004-07-12
  • 打赏
  • 举报
回复
可以实现吗?
xiangyan 2004-07-12
  • 打赏
  • 举报
回复
555, 没解释好

DIM LSTEMP AS STRING

LSTEMP = “BBB”

“optSELF_HELP_SACK_” & LSTEMP = True

结果相当于
“optSELF_HELP_SACK_BBB = True

daisy8675 2004-07-12
  • 打赏
  • 举报
回复
為什麼做不到?
northwolves 2004-07-12
  • 打赏
  • 举报
回复
控件数组
fishmans 2004-07-12
  • 打赏
  • 举报
回复
是不是这样的?
dim mObject() as textbox
dim i as integer
redim mobject(text1.count)
for i=0 to text1.count-1
set mobject(i)=text1(i)
next
或者
redim preserve mobject(10) as object
set mobject(0)=text1
set mobject(1)=combo1
...........

调用时可以用
for i=0 to ubound(mobject)-1
mobject(i).text=cstr(i)
next
螺丝刀2000 2004-07-12
  • 打赏
  • 举报
回复
没明白你的意思。
rainstormmaster 2004-07-12
  • 打赏
  • 举报
回复
没看懂,你试试用controls(变量名)表示

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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