最近做了word2007的插件開發(VBA開發)。雖然還沒有完全寫完,但是感覺有必要寫一些東西了,于是就記錄下來....
office的開發分為程式級開發和文檔級開發,程式集開發的典型代表就是傳說中的插件開發(AddIn)。
具體如何在VS中建立word的插件就是.........
主要是有一個ThisAddIn的類,這個類就代表了這個插件,主要的是兩個函數:private void ThisAddIn_Startup(object sender, System.EventArgs e) 和 private void ThisAddIn_Shutdown(object sender, System.EventArgs e)。
從名字上都能猜出這函數是do什麼的了.....
下面有兩個基本任務:
1,在word程式的上面菜單“Add-Ins”裡面增加一個選項,并且增加必要的按鈕。這個部分叫做Ribbon開發。具體的詳情在網絡上有n多,也很簡單。主要就是想辦法讓AddIn啟動,我這裡在裡面增加了一個toggleButton按鈕,這個按鈕和button差別是這個按鈕對選中的狀态有顯示的不同
代碼
這裡面的TaskPane1是我AddIn操作的面闆,稍後會提到。
Globals.ThisAddIn.TaskPane1.Visible = ((RibbonToggleButton)sender).Checked;這句的作用是當按鈕按下的時候,面闆TaskPane1就從word程式中顯示出來。
2,開發使用者控件mainControl。
mainControl是我們使用這個AddIn的時候使用的各種控件的集合類,這個控件是add- UserControl 變來的。當然我們設計控件的話,主要的操作也是要設計這個東東。
好了,于是有人就提醒了,TaskPane1,TaskPane1... 是拉是拉...TaskPane1簡單來說就是承載使用者控件到AddIn的一個Tools.CustomTaskPane 的類,把TaskPane 和 mainControl結合一起的關鍵就是:this.taskPane1 = this.CustomTaskPanes.Add(mainControl, "ReviewHelper");
另外還要注意這句:Globals.Ribbons.ReviewHelperRibbon.toggleButton1.Checked = taskPane1.Visible;
和前面那個Ribbon開發句子相對應....
好了,這下基本的架構就完成了,build并調試就會啟動一個word,并且把插件的安裝到這個word裡面去了...
本文轉自軒脈刃部落格園部落格,原文連結:http://www.cnblogs.com/yjf512/archive/2010/10/29/1864399.html,如需轉載請自行聯系原作者