1

TVirtualStringTree新しいコンポーネントを作成しています。オブジェクトを関連付けるプロパティを 1 つ追加したいと考えています。

以下の図では、プロパティが関連付けられたTLabelオブジェクトの例を示しています。FocusControlTEdit

ここに画像の説明を入力

私がこれを好きなら:

  TMyComponent = class(TComponent)
  private
    FVirtualStringTree: TVirtualStringTree;
  protected
    { Protected declarations }
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
    property VirtualStringTree: TVirtualStringTree read FVirtualStringTree write FVirtualStringTree;
  end;

次のようなエラーが表示されます。

このタイプの関連付けを作成する方法についてアドバイスをお願いします。

4

1 に答える 1

3

問題は関連付けではありません。問題は、コードを (間接的に)TVirtualStringTreeパッケージにインクルードし、別のインストール済みパッケージに同じユニットが既に含まれていることです。

その他のパッケージは明らかに のランタイム パッケージであるためTVirtualStringTree、パッケージからそのパッケージを参照する必要があります。その場合、ユニットは組み込まれず、VirtualTreesR代わりに参照されます。このようにして、競合を回避し、すべてがうまくいくはずです:

package Bla;

  ...

requires
  VirtualTreesR,
  vcl,
  etc....
于 2016-03-18T12:42:52.687 に答える