using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using cadApp = Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Runtime;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.AutoCAD.Interop; //引用com类库
[assembly: ExtensionApplication(typeof(yfCAD.myClass))] //启动时加载工具栏,注意typeof括号里的类库名
namespace yfCAD
{
public class myClass : Autodesk.AutoCAD.Runtime.IExtensionApplication //注意:重要
{
public void Initialize()
{
AddToolBar();//启时自动加载工具栏
}
// 清除操作,不可缺少
public void Terminate()
{
}
//加载工具栏
public void AddToolBar()
{
string path = Path();
Autodesk.AutoCAD.Interop.AcadApplication acadApp = (AcadApplication) Autodesk.AutoCAD.ApplicationServices.Application.AcadApplication;
Autodesk.AutoCAD.Interop.AcadToolbar atb = null;
Autodesk.AutoCAD.Interop.AcadToolbarItem atbi = null;
try
{
atb = acadApp.MenuGroups.Item("ACAD").Toolbars.Add("您自己工具栏的名称");
//示例atbi = atb.AddToolbarButton(0, "工具栏名称", "帮助", "命令 ", false);
//命令后,紧跟一空格,否则处于等待状态
atbi = atb.AddToolbarButton(0, "数字文本求和", "数字文本求和", "Sum ", false);
//示例atbi.SetBitmaps(工具栏图片文件路径,工具栏图片文件路径);
atbi.SetBitmaps(acadApp.Path.Trim() + "\\***.bmp", acadApp.Path.Trim() + "\\***.bmp");
atbi = atb.AddToolbarButton(1, "批量转换", "批量转换", "dwgToPdf ", false);
atbi.SetBitmaps(acadApp.Path.Trim() + "\\***.bmp", acadApp.Path.Trim() + "\\***.bmp");
//工具栏靠右边停靠
atb.Dock(Autodesk.AutoCAD.Interop.Common.AcToolbarDockStatus.acToolbarDockRight);
atb.Visible = true;
}
catch
{
Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;
ed.WriteMessage("加载工具栏出错……");
}
}