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

首頁 > 開發 > 綜合 > 正文

VB外接程序的設計- 得到VB的控制權

2024-07-21 02:20:36
字體:
來源:轉載
供稿:網友
,歡迎訪問網頁設計愛好者web開發。vb外接程序的設計一,得到vb的控制權首先,外接,故名思意,當然必須是要和vb一起啟動!在新建一外接工程后.新工程中設計器中有 conncet.dsr有這一元件,元件中有最為關鍵的一個事件 private sub addininstance_onconnection(byval application as object, byval connectmode as addindesignerobjects.ext_connectmode, byval addininst as object, custom() as variant) 這個事件中的 application 就是vbide.要想控制vb,就必須從這里入手.因此在聲明區就有了 public vbinstance as vbide.vbe 這行代碼,在這個事件中就有了 set vbinstance = application .然后,你的外接程序就可以直接控制整個vb.建議不要使用太長的變量名vbinstance,而使用vbi這樣的短名稱.編程可不是寫文章.你能簡短就簡短.目的是完成功能,而不是讓人欣賞你代碼的編寫藝術. connectmode 讓會讓你寫的軟件具備標準外接的連接方式.如果不標準,那你的代碼雖然簡練了很多,但是功能卻讓人卻步. 言歸正傳, connectmode = ext_cm_external 時,那是為向導準備的.新建一個 向導,其元件wizard中的代碼就很明顯,簡單明了的告訴你,"被向導工具欄用來啟動向導" if connectmode = ext_cm_external then '被向導工具欄用來啟動向導 loadme else [...] end if 當然,現在我們步創建向導,創建向導也步用操心太多,很多工作模板中已經存在了,可是有個問題我很好奇,為什么沒有創建向導的向導呢,這似乎是個具有諷刺意味的事情,但是從vb6到vb.net我似乎沒聽說過. 下面接著做的就是添加到vb的工具欄或菜單里了.同樣工作很簡單,很重要的一點,你需要聲明一個響應按鈕的事件對象 : public withevents evnmycmdbar as commandbarevents commandbarevents 只有一個事件,就是 click .光這樣聲明了是沒有用的.必須要在addininstance_onconnection事件中: dim cbmycmd as commandbarcontrol dim cbcmd as commnadbar 然后: set cbcmd = vbi.commandbars("tools")'tools 是vb菜單工具這一菜單的名稱.如果要加到文件菜單那就是 "file" 編輯菜單就是 "edit" 視圖彩帶就是 "view",工程菜單就是 "project".往工具條里添也成,知道名稱就成,推薦個了解名稱最好的方法,再調試時按暫停,再監視里添加 vbi變量,然后展開它查看,一個一個點,絕對能找到你想要的東西. set cbmycmd=cbcmd.controls.add 添加一個 按鈕下面設置標題 cbmycmd.caption="這是我的按鈕" 為按鈕創建圖標是我后來才了解到的,方法似乎很古怪.看我將要寫的代碼. clipboard.clear '清除剪切板內容. clipboard.setdata loadrespicture(102, vbresbitmap)'從資源或其它任意一種方式加載一個16*16大小的圖片. cbmycmd.pasteface '然后粘貼到按鈕上,這個方法對象瀏覽器里是看不到的,完全看不到,有時候調用還會出錯的.然而在這里調用保證沒問題. clipboard.clear'最后建議你清除一下,現在你也許明白了另外一個 問題.為什么每次啟動vb前剪貼板中的內容在啟動vb后會消失,或者如果你在窗體上粘貼一下,就會出現某一個vb外接程序圖標.非常了不起就是這個鬼過程使得每次找到的代碼先復制后打開vb然后粘貼,卻什么也沒有。不知道您是不是為此而頭暈過哪!我想一定是的。下面你必須要做的就是把這個按鈕的事件和你在聲明行里聲明的時間關聯起來。同樣很簡單: set me.evnmycmdbar = vbi.events.commandbarevents(cbmycmd)'前面 講過了 vbi就是vbide.vbe對象.再次說明,創建按鈕之前必須要 set vbi= application 這是現在所在的事件的參數之一. 到這里,如果你看明白了上面的東西的話,你的程序應該能運行了.不過別忘了如果按鈕是要顯示你的窗體的話,就再evnmycmdbar事件里添入 frmname.show .接著,vb的控制權你的程序就有了一份了!想干嗎就干嗎! 我可不想給你我寫好的代碼,如果該你了代碼,你就不會仔細研究了,不仔細研究怎么能做出來外接呢!
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 顺义区| 东宁县| 博爱县| 汉川市| 临汾市| 怀化市| 敦化市| 拉萨市| 梁山县| 奉新县| 个旧市| 朝阳区| 延寿县| 进贤县| 台州市| 宁陵县| 福建省| 手机| 江门市| 大田县| 宣威市| SHOW| 沂南县| 荣昌县| 肃南| 嘉善县| 舞阳县| 泽普县| 靖州| 扶余县| 河间市| 承德县| 商南县| 玉环县| 策勒县| 浦城县| 隆子县| 华池县| 股票| 教育| 舟曲县|