方法一 可能沒有什么實(shí)用性,只適合簡(jiǎn)單項(xiàng)目: dim frmtmp as classform "實(shí)現(xiàn)已經(jīng)設(shè)計(jì)好了一個(gè)稱作(類名為)classform的表單 frmtmp = new classform "在此定義它的一個(gè)實(shí)例
frmtmp.showdialog() "作為模式窗體顯示 這樣在當(dāng)前窗體沒有關(guān)閉以前,其他form上的菜單按鈕都不可用,巧妙使用可以避免多次實(shí)例化的問題。 方法二 只適用于,form不是特別多,且多運(yùn)行時(shí)占用內(nèi)存沒有特殊要求的場(chǎng)合 在項(xiàng)目運(yùn)行時(shí),分別定義每個(gè)可能用到的form的實(shí)例,但不顯示,只有在需要顯示的時(shí)候每次調(diào)用,x.show(x為想顯示的form實(shí)例名),關(guān)閉的時(shí)候使用x.hide即可。 方法三 分別定義每個(gè)需要顯示的form類的全局變量,在實(shí)際顯示窗體前使用以下代碼: if frm is nothing orelse frm.isdisposed then frm = new form1 frm.show() else frm.activate() end if 方法四 本方法特別適用于多文檔界面: dim frmtmp as form "搜索每個(gè)mdi子窗體一般打開的子窗體不會(huì)太多,所以不存在速度問題 for each frmtmp in me.mdichildren "if 找到你想顯示的classfrm窗體 if typeof frmtmp is classfrm then frmtmp.activate() exit sub end if next "如果mdi子窗體中沒有你想顯示的窗體 "則定義新的實(shí)例,并顯示。 frmtmp = new classfrm400 frmtmp.mdiparent = me frmtmp.show()