日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
VB.NET MDI子窗體實例化問題解決方案

VB.NET的出現(xiàn)幫助開發(fā)人員解決了以前很難實現(xiàn)的各種問題。下面大家就可以通過對VB.NET MDI子窗體在實際編寫中遇到的實例化問題解決方法進行一個詳細的了解,從而掌握這一問題的防范技巧。#t#

VB.NET MDI子窗體被多次實例化防范方法一

可能沒有什么實用性,只適合簡單項目:

  1. Dim frmTmp As ClassForm 
  2. "實現(xiàn)已經(jīng)設(shè)計好了一個稱作
    (類名為)ClassForm的表單   
  3. frmTmp = New ClassForm 
  4. "在此定義它的一個實例  
  5. frmTmp.ShowDialog() 
  6. "作為模式窗體顯示 

這樣在當前窗體沒有關(guān)閉以前,其他form上的菜單按鈕都不可用,巧妙使用可以避免多次實例化的問題。

VB.NET MDI子窗體被多次實例化防范方法二

只適用于,form不是特別多,且多運行時占用內(nèi)存沒有特殊要求的場合

在項目運行時,分別定義每個可能用到的form的實例,但不顯示,只有在需要顯示的時候每次調(diào)用,x.show(x為想顯示的form實例名),關(guān)閉的時候使用x.hide即可。

VB.NET MDI子窗體被多次實例化防范方法三

分別定義每個需要顯示的form類的全局變量,在實際顯示窗體前使用以下代碼:

 
 
 
  1. If frm Is Nothing OrElse 
    frm.IsDisposed Then  
  2. frm = New Form1  
  3. frm.Show()  
  4. Else  
  5. frm.Activate()  
  6. End If 

VB.NET MDI子窗體被多次實例化防范方法四

本方法特別適用于多文檔界面:

 
 
 
  1. Dim frmTmp As Form  
  2. "搜索每個MDI子窗體一般打開的子
    窗體不會太多,所以不存在速度問題  
  3. For Each frmTmp In Me.MdiChildren  
  4. "if 找到你想顯示的ClassFrm窗體  
  5. If TypeOf frmTmp Is ClassFrm Then  
  6. frmTmp.Activate()  
  7. Exit Sub  
  8. End If  
  9. Next  
  10. "如果MDI子窗體中沒有你想顯示的窗體  
  11. "則定義新的實例,并顯示。  
  12. frmTmp = New ClassFrm400  
  13. frmTmp.MdiParent = Me 
  14. frmTmp.Show()  

本文名稱:VB.NET MDI子窗體實例化問題解決方案
分享路徑:http://www.5511xx.com/article/dpsgpgh.html