在CAD中經常用到停靠或浮動的PaletteSet,比如:特性、圖層特性管理器、工具選項板等(以下截圖來自AutoCAD2010界面)。
特性PaletteSet(停靠)
圖層特性管理器PaletteSet(浮動)
工具選項板PaletteSet(浮動、多個Palette)
這些Palette給設計帶來了極大方便,靈活的展現形式(浮動和停靠)不禁讓人也想給自己定制一個Palette ,下面就開始動手吧!
在CAD的acmgd.dll中我們可以找到名稱空間Autodesk.AutoCAD. Windows,今天的主角Autodesk.AutoCAD.Windows.PaletteSet就出生於此。
1 [Autodesk.AutoCAD.Runtime.CommandMethod("AddMyPaletteSet")] 2
3 public void AddMyPaletteSet() 4
5 { 6
7 Autodesk.AutoCAD.Windows.PaletteSet myPaletteSet = new Autodesk.AutoCAD.Windows.PaletteSet("我的PallteSet"); 8
9 myPaletteSet.Add("我的工具集", new System.Windows.Forms.Control("我的工具集")); 10
11 myPaletteSet.Add("我的顏色", new System.Windows.Forms.Control("我的顏色")); 12
13 myPaletteSet.Add("我的控件", new System.Windows.Forms.Control("我的控件")); 14
15 myPaletteSet.Visible = true; 16
17 }
以上代碼是創建一個PaletteSet,包含三個Palette,最后通過設置myPaletteSet.Visible為true將其顯示出來。myPaletteSet.Add第一個參數是Palette的名字,第二個參數是.Net中的WinForm控件,這里為了簡便就用了Control,當然真正應用時需要自己定義UserControl。myPaletteSet.Add返回值是Palette。下面看看我們的PaletteSet小伙伴吧!
打開CAD,Netload生成的Dll,運行命令AddMyPaletteSet,下面是截圖:
停靠狀態
浮動狀態
PaletteSet和Palette就簡單介紹到此,2013-11-07 23:06, Time to Sleep,Good Night !