![Visual-BASIC程序設(shè)計(jì)第14章_第1頁](http://file4.renrendoc.com/view11/M00/2D/12/wKhkGWWtqd-AadXoAAF3ch7YgR8900.jpg)
![Visual-BASIC程序設(shè)計(jì)第14章_第2頁](http://file4.renrendoc.com/view11/M00/2D/12/wKhkGWWtqd-AadXoAAF3ch7YgR89002.jpg)
![Visual-BASIC程序設(shè)計(jì)第14章_第3頁](http://file4.renrendoc.com/view11/M00/2D/12/wKhkGWWtqd-AadXoAAF3ch7YgR89003.jpg)
![Visual-BASIC程序設(shè)計(jì)第14章_第4頁](http://file4.renrendoc.com/view11/M00/2D/12/wKhkGWWtqd-AadXoAAF3ch7YgR89004.jpg)
![Visual-BASIC程序設(shè)計(jì)第14章_第5頁](http://file4.renrendoc.com/view11/M00/2D/12/wKhkGWWtqd-AadXoAAF3ch7YgR89005.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第14章對象的鏈接與嵌入--使用OLE控件14.1如何使用OLE控件14.2嵌入對象與鏈接對象的區(qū)別14.3在程序中利用屬性創(chuàng)建嵌入和鏈接對象14.4如何編輯OLE對象習(xí)題 OLE是ObjectLinkingandEmbedding的英文縮寫,中文譯為對象的鏈接與嵌入,它的作用是支持其他應(yīng)用程序的對象鏈接或嵌入到VisualBASIC應(yīng)用程序中來,如Word文檔、Excel工作表、圖像、聲音等等,使得VisualBASIC能夠使用其他應(yīng)用程序的數(shù)據(jù)。剪貼板是大家再熟悉不過的了,利用它我們完成了不同應(yīng)用程序之間數(shù)據(jù)的傳遞。后來出現(xiàn)了DDE(動態(tài)數(shù)據(jù)交換),使得應(yīng)用程序之間的數(shù)據(jù)交換不再通過“第三者”(剪貼板),而是使需要數(shù)據(jù)交換的應(yīng)用程序直接進(jìn)行“對話”。VB提供的OLE控件則進(jìn)一步發(fā)展了DDE,使其功能更完善。下面對OLE控件作初步的介紹。14.1如何使用OLE控件OLE圖標(biāo)為,它位于工具箱的右下角。下面我們舉例說明OLE控件的使用方法。【例14.1】在VisualBASIC窗體上添加一個OLE控件,并在這個OLE控件中嵌入一個事先建立好的Word文檔。具體操作如下:(1)首先準(zhǔn)備好將要嵌入到OLE控件的對象。啟動Word并創(chuàng)建一個文檔,將其以文件名“l(fā)ist.doc”保存,以備用。(2)啟動VB并在窗體上添加一個OLE控件。單擊工具箱中的OLE控件,然后將鼠標(biāo)移回窗體,按住鼠標(biāo)左鍵在窗體上拖拉(或雙擊OLE控件),就會出現(xiàn)一個“插入對象”對話框,見圖14.1。此對話框給出了所有OLE對象類型。對話框中有幾個可供選用的單選鈕和選擇框:(1)“新建”單選鈕:為缺省按鈕。如果原來沒有準(zhǔn)備好要嵌入的對象,就需要選擇“新建”。VisualBASIC就會立即啟動用戶在“對象類型”中選擇的應(yīng)用程序,在應(yīng)用程序中創(chuàng)建所需的對象。例如,若在“對象類型”中選擇了“MicrosoftWord文檔”,VB就會啟動Word,然后在Word中建立一個新文檔作為OLE對象,用戶可以在其中輸入文檔內(nèi)容。(2)“從文件創(chuàng)建”單選鈕:如果用戶已經(jīng)建立了要嵌入的對象,則應(yīng)選擇此單選鈕(此時單選鈕左側(cè)的圓圈內(nèi)有一個黑圓點(diǎn)),屏幕上會立即顯示出如圖14.2所示的對話框。單擊“瀏覽”按鈕,會出現(xiàn)瀏覽窗口,此時用戶可以從中選擇要插入的對象。圖14.1(3)“顯示為圖標(biāo)”選擇框:如果選擇它,插入到OLE控件中的對象以圖標(biāo)的方式顯示。由于本例的對象是Word文檔,并且此文檔是事先建好的,所以在對話框(圖14.1)中選擇“從文件創(chuàng)建”。當(dāng)顯示出如圖14.2所示對話框時,單擊“瀏覽”,選擇存放在A驅(qū)動器上的list.doc文件,并選擇“鏈接”,表示產(chǎn)生一個鏈接對象。圖14.2單擊“確定”按鈕,OLE對象便裝入到OLE控件中(見圖14.3)。圖14.314.2嵌入對象與鏈接對象的區(qū)別嵌入與鏈接的不同之處在于插入到OLE控件的對象(數(shù)據(jù))所存放的位置。例如,當(dāng)我們將一個Word文檔嵌入到VB應(yīng)用程序中時,VisualBASIC是將Word文檔本身(實(shí)際上是將Word文檔的拷貝)插入到應(yīng)用程序中,其他的程序是不允許訪問被嵌入對象的。而當(dāng)把Word文檔鏈接到VB應(yīng)用程序中時,VisualBASIC是將Word文檔的指針(即地址)插入,在調(diào)用該文檔時根據(jù)該地址去訪問被鏈接的Word文檔。當(dāng)數(shù)據(jù)源發(fā)生變化時,應(yīng)用程序所調(diào)用的數(shù)據(jù)也隨之變化,其他的程序也可以訪問被鏈接對象。如圖14.4和圖14.5示意。圖14.5圖14.4嵌入到OLE控件中的數(shù)據(jù)不會丟失,但它是以占用更多的空間為代價(jià)的。鏈接到OLE控件中的數(shù)據(jù)雖然占用較少的空間,但是數(shù)據(jù)源容易受外界的影響而丟失,而且當(dāng)應(yīng)用程序在不同的計(jì)算機(jī)上運(yùn)行時,鏈接關(guān)系會消失(因?yàn)楸绘溄游募赡懿辉谒玫挠?jì)算機(jī)系統(tǒng)中)。14.3在程序中利用屬性創(chuàng)建嵌入和鏈接對象在14.1節(jié)中,我們借助“插入對象對話框”,在應(yīng)用程序中沒有編寫任何代碼就為OLE控件創(chuàng)建了一個鏈接對象。下面我們舉例說明如何利用編程來創(chuàng)建嵌入或鏈接對象。【例14.2】設(shè)計(jì)一個程序,在一個OLE控件中嵌入Word文檔,在另一個OLE控件中鏈接Word文檔。設(shè)計(jì)界面如圖14.6所示,由兩個OLE控件和兩個命令按鈕組成。圖14.6其中:OLE的AutoActivate屬性用來設(shè)置以何種方式激活對象。選值范圍為0~3。0--Manual:手工的。對象不能自動激活。1--GetFocus:當(dāng)?shù)玫浇裹c(diǎn)時被激活。2--DoubleClick:為缺省值。當(dāng)雙擊時對象被激活。3--Automatic:自動的。本例中我們選擇了缺省值DoubleClick。名稱屬性給OLE控件設(shè)置一個名字。編寫單擊“鏈接”命令鈕時的事件過程:PrivateSub鏈接_Click()OLE1.Class="Word.Document.8"OLE1.SourceDoc="a:\w1.doc"OLE1.Action=1EndSub第2行OLE1控件的Class屬性指的是嵌入或鏈接到OLE控件中對象的類名。也可以不在程序中指定而在界面設(shè)計(jì)時在屬性窗口選中Class屬性,此時右側(cè)出現(xiàn)3個點(diǎn)(…),單擊它打開一個選定類對話框,見圖14.7所示,此對話框給出了系統(tǒng)中可用的類名,從中選擇一個要嵌入對象的類名稱。我們確定對象的類名稱為Word.Document.8。圖14.7第3行的SourcrDoc屬性指定要鏈接的文件名(包括路徑)。第4行的Action屬性設(shè)置一個值,它的作用是通知系統(tǒng)進(jìn)行何種操作。OLE1的Action屬性的值設(shè)置為1,即通知系統(tǒng)進(jìn)行鏈接操作。此屬性只能在程序中使用,在設(shè)計(jì)階段不可用。Action屬性共有14個值可供選擇,說明如下:0--生成內(nèi)嵌對象。1--生成鏈接對象。4--將對象的數(shù)據(jù)和屬性復(fù)制到系統(tǒng)剪貼板。5--將系統(tǒng)剪貼板中的數(shù)據(jù)粘貼到OLE容器控件。6--從應(yīng)用程序中獲取當(dāng)前數(shù)據(jù)并修改OLE容器控件的內(nèi)容。7--激活OLE控件。9--關(guān)閉OLE對象。10--刪除OLE對象。11--將對象保存到數(shù)據(jù)文件中。12--加載保存到數(shù)據(jù)文件中的OLE對象。14--顯示插入對象對話框。15--顯示特殊粘貼對話框。17--更新對象支持的謂詞列表。18--將對象以O(shè)LEversion1.0版本的文件格式保存。下面是單擊“嵌入”命令按鈕的事件過程:PrivateSub嵌入_Click()OLE2.Class="Word.Document.8"OLE2.SourceDoc="a:\w1.doc"OLE2.Action=0EndSub對象OLE2的Class屬性和SourceDoc屬性與OLE1相同,所以類名也是“Word.Document.8”,例中兩個控件使用同一個文件,所以文件名也為“a:\w1.doc”,Action屬性設(shè)置為0,通知系統(tǒng)進(jìn)行嵌入操作。運(yùn)行以上程序,單擊“鏈接”命令按鈕后,執(zhí)行事件過程“鏈接_Click()”,將“a:\w1.doc”鏈接到OLE1控件中,它是一個事先準(zhǔn)備好的Word文檔,見圖14.8中的左側(cè)文字。單擊“嵌入”命令鈕,執(zhí)行事件過程“嵌入_Click()”,將“a:\w1.doc”嵌入到OLE2控件中,見圖14.8中的右側(cè)文字。因?yàn)殒溄雍颓度氲氖峭粋€文件,所以表面上看執(zhí)行的結(jié)果是一樣的,但實(shí)際上它們有著本質(zhì)上的區(qū)別,如前述鏈接是由指針指向了文件所在位置,而嵌入的是一份數(shù)據(jù)的拷貝。在前面我們已經(jīng)提到過,文件中數(shù)據(jù)本身的改變會影響鏈接的內(nèi)容,但卻不會影響嵌入的內(nèi)容。為了證實(shí)這一點(diǎn),現(xiàn)在用以下操作來看看鏈接和嵌入的不同。圖14.8圖14.9(1)在Word中打開文檔“a:\w1.doc”。(2)將字體由六號字改為四號字。(3)將修改好的文件存盤。在將修改過的文件進(jìn)行保存時,就會看到OLE1控件中的數(shù)據(jù)被修改,字號由六號修改為四號,而OLE2中的數(shù)據(jù)則沒有發(fā)生任何改變。見圖14.9。14.4如何編輯OLE對象不論在設(shè)計(jì)時還是在運(yùn)行時都可以隨時對OLE對象進(jìn)行編輯。在設(shè)計(jì)階段,如果要編輯OLE對象,在OLE控件上單擊鼠標(biāo)右鍵,立即彈出一個如圖14.10的菜單。圖14.10讀者已比較熟悉這種對話框,一定不陌生,這里不再做詳細(xì)介紹,請讀者自己通過使用來掌握它。當(dāng)在運(yùn)行時,如果要編輯OLE對象,同樣在OLE控件上單擊鼠標(biāo)右鍵,立即彈出一個如圖14.11的菜單,讀者自己上機(jī)實(shí)驗(yàn)一下,掌握它
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年全球及中國半導(dǎo)體用水溶性助焊劑行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025年全球及中國第一人稱視角射擊游戲行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025年全球及中國HDPE模制容器行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 2025年全球及中國茂金屬線型低密度聚乙烯樹脂行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報(bào)告
- 合同起草范本
- 汽車自駕租賃合同
- 房屋委托代管合同
- 2025贈與合同公證書
- 維修工聘用合同范本
- 收獲成長迎接新起點(diǎn)主題班會
- 2024年江西省南昌市南昌縣中考一模數(shù)學(xué)試題(含解析)
- 繪本的分鏡設(shè)計(jì)-分鏡的編排
- 查干淖爾一號井環(huán)評
- 體檢中心分析報(bào)告
- 人教版初中英語七八九全部單詞(打印版)
- 臺球運(yùn)動中的理論力學(xué)
- 最高人民法院婚姻法司法解釋(二)的理解與適用
- 關(guān)于醫(yī)保應(yīng)急預(yù)案
- 新人教版五年級上冊數(shù)學(xué)應(yīng)用題大全doc
- 2022年版義務(wù)教育勞動課程標(biāo)準(zhǔn)學(xué)習(xí)培訓(xùn)解讀課件筆記
- 2022年中國止血材料行業(yè)概覽:發(fā)展現(xiàn)狀對比分析研究報(bào)告(摘要版) -頭豹
評論
0/150
提交評論