利用pro/tookit的UI對話框資源文件的形式來定義和描述界面組成元件、屬性及布局,這樣形式的優(yōu)點(diǎn)是可以充分利用Pro/Tookit提供的UI對話框操作函數(shù)和Proe資源,設(shè)計(jì)出與Proe界面風(fēng)格一致的人機(jī)交互界面。不足之處是用文本的形式定義對話框不能直觀地反映界面布局,設(shè)計(jì)、修改和調(diào)試都比較困難,Proe二次開發(fā)效率比較低。
步驟/方法
-
如果用MFC來設(shè)計(jì)對話框界面,那所有的事情就簡單多了。MFC是VC++程序的一個重要的軟件資源,為開發(fā)windows應(yīng)用程序提供了強(qiáng)大的支持。利用MFC可以進(jìn)行可視化界面設(shè)計(jì),與UI對話框相比MFC的對話框布局更為容易,修改和調(diào)試更為方便。pro/tookit+MFC應(yīng)該是主流的Proe二次開發(fā)方法。
本文假設(shè)您已經(jīng)掌握Pro/Tookit的菜單技術(shù),并能在菜單中添加按鈕。我們要演示的是在Proe中工具下面增加“顯示信息測試”按鈕并用該按鈕來觸發(fā)MFC模態(tài)對話框。
1)“顯示信息測試”按鈕所綁定的回調(diào)函數(shù)為:ShowMessageTest()
-
2)利用MFC資源創(chuàng)建對話框,如圖1。該對話框的IDD為IDD_DIALOG1。
-
3)利用類向?qū)樵搶υ捒蛱砑宇悾鐖D2,假設(shè)類名稱為Ctest,其基類為Cdialog。
-
4)在ShowMessageTest()函數(shù)中添加以下代碼:
AFX_MANAGE_STATE(AfxGetStaticModuleState());
Ctest test_dlg;
est_dlg.DoModal();
第1行說明對話框資源是從DLL文件中調(diào)用,而不是從exe文件中調(diào)用,如果不包括對話框?qū)⒉伙@示
第2行是聲明了一個對話框的對象(C++要熟悉)
第3行是利用成員函數(shù)DoModal()來創(chuàng)建和顯示對話框,可以在MSDN中查到相關(guān)說明。
-
5)運(yùn)行測試效果