在C++ Builder Form中使用Delphi Form碰到如下問題:
1,pas檔案加入CB,很簡單,而且,編譯后會自動生成*。hpp檔案,以便CB呼叫Pas中的Function或Process.但是,Pas不能呼叫CB Form中的函式,不知道怎樣包含CB的表單。Delphi只能夠Uses DCU或pas.
2,因為不能包含hpp檔案,不知道Cpp檔案中表單的HWND等,無法向CB的表單發訊息,因而不能作為主體,操作Cpp中的物件。
uj5u.com熱心網友回復:
一般都是在cb里用pas檔案,如果要反過來建議用cb做成com給delphi呼叫。uj5u.com熱心網友回復:
C++Builder可以編譯pas單元,但是在pas單元中包含cpp單元,這個好像沒聽說過。一般情況下C和D混合開發,應該是把一些獨立的函式或類,放在pas單元中,合理設定引數,在cpp中呼叫pas中的函式或類時,代入合適的引數就行了。uj5u.com熱心網友回復:
我想實作表單嵌入的功能。也就是Delphi表單嵌入到CB表單中。如果能夠嵌入的話,基本上就不用大改。uj5u.com熱心網友回復:
你可以在pas單元里加入一個通知函式,比如:unit pas_form1;
uses // ...
type
TForm1 = class(TForm)
// ...
public
{ Public declarations }
procedure Notify(...);
end;
Notify()中的引數你隨便設計,能得到你需要的資料就可以了。
uj5u.com熱心網友回復:
BCB是基于VCL的,可以編譯大多數Delphi的.pas檔案,Delphi不能直接編譯c或c++的代碼,包括BCB的表單相關檔案。可以做成com或dll供Delphi使用。
uj5u.com熱心網友回復:
pas 單元不能主動取 CPP 資料 , 但可以由 CPP 方主動呼叫啊.PAS單元做個介面函式就可以了.uj5u.com熱心網友回復:
最侄訓是cb呼叫delphi吧,不是delphi呼叫cb
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/131788.html
標籤:基礎類
上一篇:入門新生,求幫助!!!
