首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

能否用 set FRM = txtFRMNAME 这样的方式来调用某个窗体解决办法

2012-04-12 
能否用 set FRM txtFRMNAME 这样的方式来调用某个窗体txtFRMNAME里面是窗体名称,比如frmSEARCH,现在我希

能否用 set FRM = txtFRMNAME 这样的方式来调用某个窗体
txtFRMNAME里面是窗体名称,比如frmSEARCH,现在我希望调用frmSEARCH里面的某个控件:
dim   FRM   as   form
set   FRM   =   txtFRMNAME
FRM.txtRESULT   =   "********* "
这样做是不行的,有没有类似的办法?不要用for   each   FRM   in   forms,这个方法我知道,想找找更简单直观的方法。

[解决办法]
这样做应该是类型不匹配了吧,你是想把txtFRMNAME里面的值作为窗体名赋给FRM吗?
[解决办法]
Option Explicit

Private Sub Command1_Click()
Select Case Text1
Case 1
SetObj Form2, "ok1 "
Case 2
SetObj Form3, "ok2 "
End Select

End Sub

Sub SetObj(frm As Form, str As String)
frm.Text1 = str
frm.Show
End Sub

[解决办法]
callByName() 可以做到类似的功能
[解决办法]
Option Explicit

Private Sub setObj(strName As String)
Dim myForm As Form
Set myForm = Forms.Add(strName)
myForm.Text1.Text = "aaa "
myForm.Show
Set myForm = Nothing
End Sub

Private Sub Command1_Click()
setObj Text1.Text
End Sub

[解决办法]
在标准模块里定义1个全局变量 Public blFlag As Boolean

Private Sub Form_Load()
If blFlag Then
MsgBox "loaded "
Else
MsgBox "the first load "
'你要处理的代码
End If
End Sub

热点排行