国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

VBCOM基礎講座之創建第一個COM對象

2019-11-18 17:54:33
字體:
來源:轉載
供稿:網友
讓我們直接來開始創建第一個真正的COM對象,它將被用于那些ActiveX程序中。

  具體步驟如下:

-align="right">->->->  啟動VisualBasic;

  我們將看到一個"New
  單擊[OK]按鈕;

  這樣,一個ActiveXDLL工程就建立好了。我們之所以創建ActiveXDLL是準備將它作為一個前端服務器,它基于Northwind
數據庫中的Customers表的(Northwind數據庫是隨VisualBasic一起發行的,位于VB98文件夾中)。

  這也就是說,我們后面一定會處理Customers信息,但那時我們僅僅需要對類的調用,而不想過多地停留在數據處理代碼的糾纏中。

  當然,我們得首先創建這個類。雖然COM能使編程更容易一點,但這個類的構造還是比較困難的。盡管如此,在深入數據庫之前,先來對ActiveX程序中的名稱作一些修改。

  將類的Name屬性改為"Customers";

  選擇"Project"->"ProjectProperties"菜單,在彈出的對話框中,將工程名改為"Northwind";

  現在再來使類與數據庫相連:

  選擇"Project"->"References"菜單;

  在彈出的對話框中,選擇"MicrosoftActiveXDataObjects2.1Library",單擊[OK]按鈕;該"引用"允許用戶處理一個數據庫,當然現在都使用COM對象來處理了。下面將圍繞相應的記錄集而展開:

  在我們的類中添加下列代碼:

->DimrsAsRecordset->

  這是一個用于訪問數據庫的記錄集對象。

  當然,當其他開始使用該類時,我們希望記錄集對象能和數據庫建立連接,而當類使用結束后,與數據庫的連接能斷開。基于這種思想,其代碼如下:

  在代碼窗口中,將Object組合框中當前的"(General)"項改為"Class";

  在右邊的組合框中,確保當前項為"Initialize";

  代碼窗口中將出現:

->  PrivateSubClass_Initialize()

  EndSub->

  當類剛開始時,所有這里面的代碼都會被執行,類似于表單中的Form_Load事件。

  在"Initialize"事件中鍵入下列代碼:

->  Setrs=NewRecordset

  rs.ActiveConnection="Provider=Microsoft."&_

            "Jet.OLEDB.4.0;DataSource=C:/ProgramFiles/"&_

            "MicrosoftVisualStudio/VB98/Nwind.mdb;"&_

            "PersistSecurityInfo=False"

  rs.Open"select*fromcustomers",,adOpenKeyset,adLockOptimistic->

  這里不需要任何與該類相關的代碼,它只是使用VisualBasic通用的ADO數據庫處理代碼,該類中的代碼是用來如何與數據庫建立連接的。

  需要說明的是,如果Northwind數據庫Nwind.mdb不在C:/ProgramFiles/MicrosoftVisualStudio/VB98文件夾,那么必須將ActiveConnection字符串內容作適當修改!

  當類開始時,rs對象負責與數據庫建立連接,但當類對象結束后或程序關閉它時,我們應該使該連接斷開。

  編程時,我們使用Terminate事件,它與Form_Unload非常相似的。從名稱來看,它們都有一個"n",但更相似的地方是當相應的對象關閉后,它們都會被激發。

  下面來加入數據庫關閉的代碼:

  從Object組合框中選擇"Class",從Procedure組合框中選擇"Terminate";

  在"Terminate"事件中,添加下列代碼:

->  rs.Close

  Setrs=Nothing->

  這就是我們添加的又一段簡單代碼,它只是簡單地關閉數據庫,然后將rs設置為Nothing。這樣,rs就會被有效刪除。

  好了,本節就到這里。下一節中,我們將繼續添加代碼用來處理數據中的記錄集。->


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 内黄县| 无极县| 鸡泽县| 灵川县| 修文县| 黔江区| 五家渠市| 大连市| 禄丰县| 波密县| 栾城县| 彭阳县| 金山区| 济源市| 斗六市| 顺义区| 静乐县| 锡林郭勒盟| 视频| 乌审旗| 容城县| 习水县| 图片| 金寨县| 兰州市| 衡东县| 吴旗县| 汕尾市| 昭平县| 高清| 泾阳县| 民乐县| 澳门| 江川县| 青川县| 奉节县| 崇信县| 龙口市| 永清县| 六安市| 威海市|