天天看點

CATIA二次開發CAA實作MFC樹形控件的方法研究

CATIA使用CAA二次開發的時候,如果需要對樹形資料對象實作管理,使用樹形控件是非常好的選擇。但是,CAA本身提供的控件較少,多數情況無法較好地滿足項目要求,如果你的水準足夠高,也可以使用CATNavigation3DViewer封裝出一個滿足要求的樹形控件,但是這樣的成本會非常高,而且,由于是個人封裝得到的控件,效率和可靠性都無法得到較好的保證。

幸好CAA提供對MFC的支援,将MFC控件使用到CAA對話框可以較好的實作低成本CAA控件擴充。都知道CAA窗體有獨立的消息泵,MFC控件的消息無法直接被CAA類接收。為了克服MFC控件與CAA類通信的障礙,需要對MFC控件進行重載,以攔截使用者關心的控件消息,并通過回調函數(函數指針)調用CAA中的相應函數實作類似CAA控件回調函數的效果。

建立過程基本分為以下幾部分:

1.建立樹形控件的面闆

CATIA二次開發CAA實作MFC樹形控件的方法研究

2.手動重載MFC樹形控件:利用樹形控件的對象,并結合其建立的成員函數,實作樹形控件建立和顯示。

CATIA二次開發CAA實作MFC樹形控件的方法研究

3.樹形控件消息攔截和響應:通過對樹形控件中消息的攔截,通過自定義視窗函數調用CAA中的類。

CATIA二次開發CAA實作MFC樹形控件的方法研究

繼續閱讀