本文探討研究了
Pro/E調(diào)用
MFC對(duì)話框技術(shù)的相關(guān)內(nèi)容。
`Mt|+iT$p h%$^s0w Pro/ENGINEER 是美國(guó)
參數(shù)化公司PTC( Parametric Technology Corporation) 于1989 年開發(fā)出的三維CAD/CAM
系統(tǒng),可以為工業(yè)產(chǎn)品設(shè)計(jì)提供完整的解決方案,廣泛應(yīng)用于造型設(shè)計(jì)、
機(jī)械設(shè)計(jì)、
模具設(shè)計(jì)、加工制造、機(jī)構(gòu)分析、有限元分析及相關(guān)數(shù)據(jù)庫管理系統(tǒng)等各個(gè)領(lǐng)域。目前Pro/E在我國(guó)應(yīng)用較廣。
%i/|}K z9OpMA Pro/TOOLKIT是Pro/ENGINEER系統(tǒng)的個(gè)性化開發(fā)工具包,也可稱為應(yīng)用程序接口(Application programmer Interface) ,它提供了大量的C語言庫函數(shù),能夠使外部應(yīng)用程序安全有效地訪問Pro/ENGINEER 的數(shù)據(jù)庫和應(yīng)用程序,通過C語言編程及應(yīng)用程序與Pro/ ENGINEER 的無縫集成,客戶和第三方能夠在Pro/ENGINEE 系統(tǒng)中增加所需的功能。
jQ'g'c! z8'zH> Pro/TOOLKIT 應(yīng)用程序共有兩種工作方式:同步模式(synchronous Mode)和異步模式(SynchronousMode) , 我們常用的是同步模式。同步模式分為DLL模式和多進(jìn)程模式。DLL模式指運(yùn)用動(dòng)態(tài)鏈接庫(Dynamically Linked Library , DLL ) 將Pro/TOOLKIT 應(yīng)用程序集成到Pro/EN GINEER中,用戶編譯C語言應(yīng)用程序,與Pro/TOOLKIT 庫連接,生成一個(gè)對(duì)象庫文件,最后與Pro/ENGINEER的可執(zhí)行文件連接。在DLL 模式中, Pro/TOOLKIT 應(yīng)用程序與Pro/ENGINEER之間的信息交換是通過直接的函數(shù)調(diào)用來實(shí)現(xiàn)。本文采用的就是DLL 模式。
o+x!
( {wA8!5Gu 1、問題的提出
C P&u xR%NiYNQz 自Pro/ EN GINEER2001 之后, Pro/ TOOL KIT就提供用戶開發(fā)界面的編程接口。利用Pro/TOOL KIT 可以開發(fā)出具有Pro/ EN GINEER 風(fēng)格的對(duì)話框,能向用戶提供人機(jī)交互界面,進(jìn)行簡(jiǎn)單的人機(jī)交互。但是目前這種方法還不太完善,功能有限,而且對(duì)話框資源編寫起來繁瑣,一個(gè)簡(jiǎn)單的對(duì)話框資源就會(huì)用去很多的時(shí)間,對(duì)于稍為復(fù)雜的對(duì)話框更是無能為力。
r<n:o7 w{dRf!b69 MFC具有強(qiáng)大的編制對(duì)話框能力,編制簡(jiǎn)單,但Pro/ TOOL KIT 并不提供對(duì)MFC 的支持,在Pro/TOOL KIT 中并不能直接應(yīng)用MFC 對(duì)話框。本文通過動(dòng)態(tài)連接庫開發(fā)了Pro/ TOOL KIT 與MFC 的接口,利用MFC 強(qiáng)大的功能實(shí)現(xiàn)對(duì)話框的開發(fā),在Pro/ EN GINEER 環(huán)境中生成MFC 對(duì)話框,方便、自然、快捷地進(jìn)行人機(jī)交互。
C7vBa<a EATVce]T 2、基本思想
SPdEO3 wG7>2*( 在Pro/ EN GINEER 系統(tǒng)中調(diào)用MFC 對(duì)話框所需解決的關(guān)鍵問題就是實(shí)現(xiàn)Pro/ E 系統(tǒng), Pro/TOOL KIT 應(yīng)用程序與MFC 對(duì)話框三者之間的
通信。Pro/ E 系統(tǒng)與Pro/ TOOL KIT 應(yīng)用程序可以采用動(dòng)態(tài)鏈接庫(DLL ) 方式進(jìn)行通信。由于Pro/TOOL KIT 是通過C 語言進(jìn)行編程,無法直接調(diào)用MFC 對(duì)話框,這就使得必須運(yùn)用通信方式實(shí)現(xiàn)在Pro/ TOOL KIT 中調(diào)用MFC 對(duì)話框,本文作者采用動(dòng)態(tài)鏈接庫(DLL) 實(shí)現(xiàn)二者的通信。
>KP,67 gsEcvkj* 3、Pro/ E 調(diào)用MFC 對(duì)話框
實(shí)例 Mb[4_Dc *_YR*e0^nN 本文作者開發(fā)了一個(gè)Pro/ EN GINEER 調(diào)用MFC 對(duì)話框?qū)嵗?該實(shí)例在Pro/ EN GINEER 2001中產(chǎn)生MFC 對(duì)話框,接受用戶的輸入信息,然后生成三維實(shí)體。編譯器使用Microsoft Visual C ++610 。具體的實(shí)現(xiàn)步驟如下。
F.aG7 1aIGC9xQ` (1) 編輯MFC 對(duì)話框應(yīng)用程序
t7u*j-YE $
-<(geI 利用MFC AppWizard (dll) ,工程類型選用MFC的常規(guī)DLL (Regular DLL using shared MFC DLL) ,生成一個(gè)DLL 工程,加入對(duì)話框資源,并聲明導(dǎo)出變量:
<_t]?XHB[ 1;c>#