1
VCLでFMXを使用しようとしています。 TFireMonkeyContainerというコンテナがあるようです。生成するhppに「許可されていないタイプ」というエラーが表示されます。ここではどのようにコードがエラーがC++プロジェクトのTFireMonkeyContainer
__property HWND FireMonkeyFormHandle = {read=GetHostedFMXFormWindowHandle, nodefault};
のように見えるところ基本的に私はgithubのから10.1シアトルプロジェクトをコンパイルし、それが発生したBPLとHPPを使用しています。
誰かがこのコンテナでC++で作業しましたか?
ありがとうございました。
'FireMonkeyFormHandle'は' published'と宣言されています。 'HWND'は公開プロパティの有効なデータ型ではありません。また、プロパティは読み込み専用ですが、公開されているプロパティの場合は別です。著者はコーディングミスを犯しました。 'Parnassus.FMXContainer.pas'を変更して、' FireMonkeyFormHandle'を 'published'ではなく' public'にしてから、再コンパイルしてください。 –
そのエラーを処理します。しかし今、私はfmxとvclの曖昧さのエラーを取得します。完全スコープのタイプを使用しても解決できないようです。 ideは節約を防ぎ、dfmは上がらない。おそらくfmxとvclをC++ビルダーで混在させることはできません。ありがとう。 –
Delphiで生成されたHPPファイルの最下部には 'using namespace ...'ステートメントがあるため、同じ名前のVCLとFMXシンボルがグローバル名前空間にダンプされる可能性があります。 HPPファイルを調べて、使用する特定の 'NO_USING_NAMESPACE _... '条件を確認し、必要に応じてC++プロジェクトオプションでそれらの条件を定義します。あるいは、代わりに 'DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE'条件を定義してください。 –