我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網站首頁 > Proe教程

ProE二次開發菜單技術

時間:2012-04-06 09:31:43 來源:未知

一、概述
Pro/Engineer作為一個高端、全方位的三維產品設計開發軟件,具有尺寸驅動、基于特征及單一數據庫的特點。強大的功能使其日益成為國內最受歡迎的3D CAD/CAM系統。 Pro/Toolkit是PTC公司針對Pro/Engineer軟件提供給用戶的二次開發模塊。通過調用該模塊中的C語言函數,用戶可以方便地訪問Pro/Engineer的數據庫以及內部應用程序,對Pro/E軟件的現有功能進行擴展和定制。

由于Pro/Engineer的命令都是通過菜單或一些控件按鈕執行的,在對 Pro/Engineer進行二次開發時,不可避免的需要使用其菜單及用戶界面技術,同時使用好這些技術會使編寫的軟件操作起來更加方便,界面更加友好。

二、菜單技術
Pro/Engineeg的菜單系統由2種不同類型的菜單組成,1種是與具體模式如Part,Assembly等相關的模式菜單,如圖1。另1種是處于Pro/Engineer界面上方的如 File、 Edit 菜單,相對于模式菜單,筆者姑且將其稱為全局菜單。雖然都屬于Pro/Engineer的菜單,但這2種菜單所使用的文件與函數卻有根本的差異。

 


 

 

圖1 Proe管道模式菜單

1.模式菜單
加載模式菜單需要編寫菜單文件,模式菜單的菜單文件分為完整菜單文件(以. mnu 為后綴名)和輔助菜單文件(以. aux為后綴名) 。完整菜單是指可獨立于Pro/Engineer原有菜單并且具有完整結構的菜單。輔助菜單是向Pro/Engineer原有的菜單中添加菜單按鈕,是對Pro/Engineer原有菜單的補充。無論是完整菜單還是輔助菜單都需要編寫菜單文件,而且這兩種菜單文件的語法結構是相同的。在開發時一般將編寫的菜單文件存放在注冊文件關鍵字text_dir所定義的目錄下的textmenus文件夾中.

由于模式菜單的操作不夠人性化繁瑣等缺點,PTC公司也逐漸消滅模式菜單取而代之的事UI對話框,所以本文對模式菜單就不做過多的介紹。

2.全局菜單
Pro/Engineer的全局菜單的菜單條(menu Bar)包含有很多菜單(menu bar menu)這些菜單又是由按鈕或子菜單組成,如圖2。所以,我們可以向菜單欄中添加菜單,也可以向菜單中添加按鈕或子菜單。

 


 

 

圖2  本人開發的菜單

2.1 向菜單(menu bar menu)中添加按鈕
向菜單中添加按鈕,在應用程序中需要做如下2步:

a.按鈕定義命令操作,這些命令即在我們通常所說的回調函數中進行定義。

b.向菜單中添加此按鈕。按鈕與命令的綁定是通過命令標識符(command id)實現的。

在定義命令的回調函數時需要調用 Pro/Toolkit的函數 ProCmdActionAdd (),該函數返回輸出一個類型為uiCmdCmdId的命令標識符,在向菜單中添加按鈕時, 例如添加一個PushButton,就需要調用ProMenubarmenuPushbuttonAdd( )函數,而這時就要將上一步得到的命令標識符作為參數輸入到函數中。

2.2向菜單欄中添加菜單及向菜單中添加子菜單

向菜單欄中添加菜單以及向菜單中添加子菜單都同向菜單中添加按鈕相似,在調用相應的函數中都需要輸入類型為 ProMenuItemName的參數,這些參數主要用來確定父菜單的名稱,添加的菜單或按鈕的名稱或與其相臨的菜單或按鈕的名稱。這些參數的確定可通過查找Pro/Engineer的軌跡文件(Trail File)得到。