国产探花免费观看_亚洲丰满少妇自慰呻吟_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就會被有效刪除。

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大洼县| 安阳市| 山阴县| 滕州市| 东乌| 得荣县| 泸州市| 阿克苏市| 萝北县| 麻阳| 广饶县| 枣庄市| 重庆市| 纳雍县| 开原市| 凭祥市| 江华| 四平市| 花莲市| 灵石县| 吴旗县| 舟曲县| 双峰县| 大理市| 筠连县| 卢湾区| 莒南县| 洛南县| 林甸县| 双峰县| 康保县| 潮州市| 松溪县| 体育| 东乌珠穆沁旗| 陆丰市| 锡林郭勒盟| 千阳县| 瓦房店市| 兴义市| 晋宁县|