word2007插件开发经验备忘1--如何开发word插件

最近做了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区别是这个按钮对选中的状态有显示的不同

 

代码
 
   
namespace ReviewHelperAddIn
{
public partial class ReviewHelperRibbon : OfficeRibbon
{
public ReviewHelperRibbon()
{
InitializeComponent();
}

private void ReviewHelperRibbon_Load( object sender, RibbonUIEventArgs e)
{

}

private void toggleButton1_Click( object sender, RibbonControlEventArgs e)
{
Globals.ThisAddIn.TaskPane1.Visible
= ((RibbonToggleButton)sender).Checked;
}
}
}

 

 

这里面的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");

 

代码
 
   
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using Word = Microsoft.Office.Interop.Word;
using Office = Microsoft.Office.Core;
using Tools = Microsoft.Office.Tools;

namespace ReviewHelperAddIn
{
public partial class ThisAddIn
{
/// <summary>
/// The first one task pane
/// </summary>
private Tools.CustomTaskPane taskPane1;

public Tools.CustomTaskPane TaskPane1
{
get { return taskPane1; }
}

private MainControl mainControl;
private void ThisAddIn_Startup( object sender, System.EventArgs e)
{
this .mainControl = new MainControl();
this .taskPane1 = this .CustomTaskPanes.Add(mainControl, " ReviewHelper " );
taskPane1.VisibleChanged
+= new EventHandler(taskPane1_VisibleChanged);
}

private void taskPane1_VisibleChanged( object sender, System.EventArgs e)
{
Globals.Ribbons.ReviewHelperRibbon.toggleButton1.Checked
= taskPane1.Visible;
}

private void ThisAddIn_Shutdown( object sender, System.EventArgs e)
{

}

 

 

另外还要注意这句:Globals.Ribbons.ReviewHelperRibbon.toggleButton1.Checked = taskPane1.Visible;

和前面那个Ribbon开发句子相对应....

 

好了,这下基本的框架就完成了,build并调试就会启动一个word,并且把插件的安装到这个word里面去了...

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android开发备忘录是一种帮助开发者记录和提醒开发过程中需要注意事项的工具。在日常开发中,我们经常会面临各种各样的技术细节和开发规范,因此有一个备忘录可以帮助我们更好地组织和管理这些内容非常有帮助。 首先,Android开发备忘录可以用来记录常用的代码片段或者快捷方式。当我们遇到一些常见的开发任务时,只需要从备忘录中复制相应的代码片段即可,提高了开发效率和准确性。 其次,备忘录还可以用来记录常见的错误和解决方案。在开发过程中,我们难免会遇到一些错误和异常情况,有一个备忘录可以记录下来这些问题以及相应的解决方案,以便日后遇到同样的问题时可以快速解决。 此外,备忘录还可以用来记录一些开发规范和最佳实践。Android开发有一些常见的规范和最佳实践,如命名规范、代码结构、UI设计等,这些内容可以记录在备忘录中,以便在开发过程中时刻提醒自己遵循规范,提高代码的可维护性和可读性。 除了以上功能,备忘录还可以用来记录一些常用的第三方库和工具,方便我们在开发过程中查找和使用。 总结来说,Android开发备忘录是一个非常有用的工具,它可以帮助开发者更好地组织和管理开发过程中的各种内容,提高开发效率和代码质量。在日常开发中,我们可以通过记录代码片段、错误解决方案、开发规范和最佳实践等内容,使得我们的开发工作更加高效和规范。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值