在CAA RADE中創建一個Toolbar
02-03
譯自http://maruf.ca/rade/web/
- 創建Framework
- 創建Module
- 選擇module作為啟動項
- 設置Pre-requisite workspaces
- 增加一個component:component是實現interface的一個東西。通過插入component我們讓macro(宏)通過給定的「TIE」命令自動將代碼和CATIA中的一些workbench鏈接
- 插入component(缺圖)
- 設置名稱
- 增加一個"TIE mode"。這就是將component連接到一個interface。
- 點擊省略號按鈕
- 找到叫做CATIAfrGeneralWksAddin的TIE
- 在「Search workspace」下拉列表中找到「c:Program FilesDassault SystemsB18」
#include "TIE_CATIAfrGeneralWksAddin.h"nTIE_CATIAfrGeneralWksAddin(toolbar);n
- 這兩行代碼就是宏將我們的component連接到介面的結果(在這個例子中是GeneralWksAddin介面)
MacDeclareHeader(ToolHeader);nnvoid toolbar::CreateCommands()nn{ n new ToolHeader("CommandButton1", "FirstProject","MyCommand", (void *)NULL); n}n
- 我還不是很明白這裡,但MacDeclareHeader函數使之可以在toolbar里創建命令按鈕
- new ToolHeader實例化了聲明了MacDeclareHeader函數的header
- 第一個輸入必須和SetAccessCommand里引用的名稱相同(見下面)
- 第二個輸入必須和component屬於的module一樣
- 第三個輸入是定義按鈕真正要幹什麼的CATCommand的header文件名稱
- 第四個輸入不知道是幹嘛的
CATCmdContainer * toolbar::CreateToolbars()n{nn NewAccess(CATCmdContainer,ptool,AwesomeToolBar);n n NewAccess(CATCmdStarter,pButton1,Button1);n SetAccessCommand(pButton1,"CommandButton1");n SetAccessChild(ptool,pButton1);nn AddToolbarView (ptool,1,Top);nnnreturn ptool;nn}n
- Toolbar
- NewAccess是用來分配Toolbar的
- 第一個輸入是分配toolbar是一個CATCmdContainer
- 第二個輸入是你想要的指向toolbar的指針。這個回調實際上是創建指針,你不需要事先初始化或者實例化。
- 第三個輸入是toolbar對象的名稱。和指針一樣,這個對象不需要事先實例化甚至聲明。
- AddToolbarView顯示Toolbar(顯示toolbar的指針,1或0是顯示或隱藏,toolbar放在哪裡)
- NewAccess是用來分配Toolbar的
- Commands
- New Access 又用來將按鈕分配在toolbar里
- 第一個輸入CATCmdStarter 表示正在分配一個按鈕(和toolbar不同)
- 其他輸入和toolbar相同
- SetAccessCommand 用來將按鈕指針連接到列在CreateCommands()函數里的command
- 第一個輸入是command要分配給的那個按鈕的指針
- 第二個輸入一定要和ToolHeader() 的第一個輸入相同
- SetAccessChild給toolbar分配一組以第一個child開始的children
- 第一個輸入是你想要分配的toolbar的名稱,這個toolbar獲得children
- 第二個輸入是要分配給toolbar的child的名稱
- Note 要給toolbar分配更多button,你不需要再使用SetAccessChild。你應該用SetAccessNext(見CAA文檔)。
- New Access 又用來將按鈕分配在toolbar里
- Toolbar
推薦閱讀:
※國內目前(2015-10)生命周期評價(LCA)的研究與應用的現狀?
※Teamcenter中的BOM模塊中的版本規則在實際項目中起到什麼作用?
※在交互窗口中打開一個Part文檔
※在CAA RADE中建立一個新的Part文檔