比如:使用InputBox输入一窗体名(该窗体可能还未载入,或不存在)如何做到类似 Load frmName 的样子,但这个frmName应该是一个变量注明:是VB5 ,没有Control.Add功能!!!
解决方案 »
- [求助] 除去 VB6删除excel表格时的对话框
- 关于数组的查询,为何只能找到一个?
- VBA里面有定时器控件吗?
- 如何根据text里用户输入的函数解析式画函数?
- 用VB代码对SQL SERVER2000操作的问题!
- 请教:若我想在我的VB应用程序中调用可执行程序,如记事本或UEDIT, 该怎么做?
- 《摇奖系统》在一个文本框中,有个人的身份证,在循环显示,这样的功能如何实现?
- 程序调试中有这样的内容提示:Run-time error '3315':Field 'test.setplace' can't be a zero-length string-----可能会是什么原因
- ado连接sql7.0和sql2000有什么区别??
- 几个小问题请教!
- 我的这个程序为什么会出错?
- MSHFlexGrid表格能不能匯總,或者能不能對已經得到查詢結果的Adodc控件的數據進行匯總?
select case a
case "Form1"
Form1.Show
case "Form2"
Form2.show
case ....
....
end select
上面只能加载已有的窗口类,并自动实例化。
dim frm as form
select case a
case "form1"
set frm=new Form1
frm.show
case "form2"
set frm=new Form2
frm.show
case ...
....
end select
上面可以显示一个已经存在的窗口类的多个实例。
Dim t As Form
Set t = Forms.Add("form2")
t.Show
End Sub
Form1.Show 你必须在编写代码时就要知道所有的窗体,否则通不过编译的。
但InputBox中是用户运行时才输入的,谁能未卜先知?
该窗体可能并不存在于本工程中,甚至是用户乱打一通(这时当然就出错啦,但仅限运行时!)
另,再次申明,VB5 No Forms.Add !!!
就像rainstormmaster(暴风雨 v2.0)所说,就要麻烦一些了够挑战吧:)关键是Load 语句好像不能使用变量?
Form1.Show 你必须在编写代码时就要知道所有的窗体,否则通不过编译的。
但InputBox中是用户运行时才输入的,谁能未卜先知?
该窗体可能并不存在于本工程中,甚至是用户乱打一通(这时当然就出错啦,但仅限运行时!)
另,再次申明,VB5 No Forms.Add !!!
就像rainstormmaster(暴风雨 v2.0)所说,就要麻烦一些了够挑战吧:)关键是Load 语句好像不能使用变量?
客户乱输入的东西能作为窗体类?你要载入的东西肯定是存在这么一个类的,不过是由客户指定载入某个类并实例一个对象而已。如果要载入系统类库中根本不存在的类,别说VB5无法实现,VC也无法实现。总不能无中生有的给客户臆造一个出来吧。而既然是已存在的,我上面的代码怎么会不能实现呢?
a=inputbox("Please Input Form Name")
这句代码时能预知整个工程中以后会出现的所有窗体!你工程以后再也不会增加和减少窗体了吗?
整个工程中所有窗体名以后永远不改了吗?
这段代码以后再也不用到其它工程了吗?好吧,也许你的工程中满足了上述所有要求,恭喜你,代码一次编译无需更改:)但偶希望能做成完成同样功能的代码,尽量不再编写第二次。
软件的运行流程由用户掌握,输入窗体名,要是存在于本工程,则载入,不存在,报个错得了。
做成通用函数,一次编写,一直通用,可以适合各个工程,这样不好吗?
偶算是上了VB5帮助文件的当了,它里面Forms方法里的Add,只说是应用于Collection对象,
而Forms又不能通过加点来调出方法,就一直以为是没有Add的,偶算是白活了,
明天买块豆腐去撞死算了,呵呵:)