更改AutoCAD窗口的标题和图标
2009-06-07 22:08
260 查看
public class WinAPI
{
#region 宏定义
public const int WM_SETICON = 0x80;
public const int IMAGW_ICON = 1;
public const int LR_LOADFROMFILE = 0x10;
#endregion
#region WinAPI定义
[DllImport("User32.dll", EntryPoint = "SendMessage")]
public static extern int SendMessage(
int hWnd, // handle to destination window
int Msg, // message
int wParam, // first message parameter
int lParam // second message parameter
);
[DllImport("user32", EntryPoint = "LoadImage")]
public static extern int LoadImageA(int hInst, string lpsz, int un1, int n1, int n2, int un2);
[DllImport("user32", EntryPoint = "SetWindowText")]
public static extern int SetWindowTextA(int hwnd, string lpString);
#endregion
}
{
#region 宏定义
public const int WM_SETICON = 0x80;
public const int IMAGW_ICON = 1;
public const int LR_LOADFROMFILE = 0x10;
#endregion
#region WinAPI定义
[DllImport("User32.dll", EntryPoint = "SendMessage")]
public static extern int SendMessage(
int hWnd, // handle to destination window
int Msg, // message
int wParam, // first message parameter
int lParam // second message parameter
);
[DllImport("user32", EntryPoint = "LoadImage")]
public static extern int LoadImageA(int hInst, string lpsz, int un1, int n1, int n2, int un2);
[DllImport("user32", EntryPoint = "SetWindowText")]
public static extern int SetWindowTextA(int hwnd, string lpString);
#endregion
}
using System; using System.IO; //using Microsoft.Win32; using System.Collections; using System.Windows.Forms; using System.Resources; using Autodesk.AutoCAD.ApplicationServices; using AcadApp = Autodesk.AutoCAD.ApplicationServices.Application; using Autodesk.AutoCAD.Colors; using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.EditorInput; using Autodesk.AutoCAD.Geometry; using Autodesk.AutoCAD.Runtime; using Autodesk.AutoCAD.Windows; using Autodesk.AutoCAD.Interop; using Autodesk.AutoCAD.Interop.Common; using Autodesk.AutoCAD.Customization; public class AsdkClass1 : IExtensionApplication { #region 实现接口函数,完成初始化操作 //要实现这个接口,你必须实现Initialize() 和Terminate()函数。 /// <summary> /// 初始化操作 /// </summary> public void Initialize() { //-------------------- //AddContextMenu(); //AddToolbar(); //AddMenuBar(); SetTitle(); SetIcon(); //-------------------- } /// <summary> /// 清除操作 /// </summary> public void Terminate() { } #endregion #region 更改AutoCAD窗口的标题和图标 /// <summary> /// 更改AutoCAD窗口的标题名称 /// </summary> private void SetTitle() { AcadApplication acadApp = AcadApp.AcadApplication as AcadApplication; int AcadHwnd = acadApp.HWND;//获取AutoCAD应用程序的窗口句柄 WinAPI.SetWindowTextA(AcadHwnd, "明信供电CAD 2.0"); } /// <summary> /// 更改AutoCAD窗口的图标 /// </summary> private void SetIcon() { AcadApplication acadApp = AcadApp.AcadApplication as AcadApplication; int AcadHwnd = acadApp.HWND;//获取AutoCAD应用程序的窗口句柄 string path = acadApp.Path; //从文件载入图标(16*16大小) string FileName = "G:/cad.ico"; if (File.Exists(FileName)) { int hIcon = WinAPI.LoadImageA(0, FileName, WinAPI.IMAGW_ICON, 16, 16, WinAPI.LR_LOADFROMFILE); if (hIcon != 0) { WinAPI.SendMessage(AcadHwnd, WinAPI.WM_SETICON, 0, hIcon); } } } #endregion }
//转自:http://tech.sina.com.cn/s/2008-06-24/1023705828.shtml
相关文章推荐
- AutoCAD.net(一):更改AutoCAD窗口的标题和图标
- AutoCAD.net(一):更改AutoCAD窗口的标题和图标
- 通过ARX更改AutoCAD窗口的标题名称
- MFC设置窗口标题的名称和图标
- 修改MFC窗口标题和图标
- 简便更改Eclipse的Title标题/标题图标/启动画面/等
- 修改MFC主窗口界面标题和图标的方法
- 修改MFC标题栏上的图标和修改MFC窗口标题
- QT5.5 vs2013 更改窗口icon图标
- 设置标题和图标,设置窗口大小,设置光标
- wxPython中添加窗口标题图标
- VC动态更改窗口图标
- 【转载】修改MFC窗口标题 & 图标
- VC中MDI程序修改主窗口的标题和图标
- VB动态更改窗口图标的类(支持WinXP的32位图标)
- 设为首页、添加到收藏夹、更改地址栏前小图标、按下回车键事件、关闭窗口
- 更改窗口图标并将其显示在任务栏
- 更改窗口图标并将其显示在任务栏
- MFC单文档中修改窗口标题和标题栏图标
- 修改MFC窗口标题和图标