我很確定這個答案,但我正在嘗試各種各樣的事情來獲得一個非常頑固的項目。一個想法是嘗試通過控件運行代碼,而不是在表單上定義它。是否可以使用控件而不將它放在VB6中的窗體上?
因此,舉例來說,我原來的代碼是這樣的:
frmProcess.MyViewer.MaxPageSize = 100
frmProcess.MyViewer.ResetPages
frmProcess.MyViewer.AddPageToView "C:\TestPage1.txt"
我把它改爲:
Dim objViewer As MyViewer
objViewer.MaxPageSize = 100
objViewer.ResetPages
objViewer.AddPageToView "C:\TestPage1.txt"
我與「運行時錯誤'91錯誤窗口':對象變量或未設置塊變量「。
但似乎沒有辦法'設置'這個控件。這是不可能的,還是有另一種方式來做到這一點,不需要表單?
編輯︰我最終放棄了整個活動的路徑,因爲發現了一個替代解決方案,解決了這個表單凍結的問題。如果有其他人出現,我不想刪除這個問題,並且可以從可能有用的答案中受益。
所示的代碼等同於'昏暗objViewer作爲MyViewer = Nothing'。沒有創建控制。 – user2864740 2014-10-16 19:41:59
嘗試設置objViewer =如果您的項目中引用了新的MyViewer,則嘗試使用CreateObject。 – jac 2014-10-16 20:12:02
定義'在表單上定義它'。因爲如果你的意思是創造它,那麼沒有。如何在不存在的東西上運行代碼?不計算。您必須創建一個對象,無論是通過IDE還是通過像jac建議的代碼。 – George 2014-10-16 20:12:47