7

から継承したカスタム コントロールを作成し、 のプロパティをTCustomControl公開しました。しかし、C++Builder プロジェクトでこのカスタム コントロールを使用すると、例外が発生しました。AlignTControl

Project Launcher.exe raised exception class EReadError with message 'Property Align does not exist'.

これは、カスタム コントロールのコードです。

unit GameListCtrl;

interface

uses
  SysUtils, Classes, Controls;

type
  TGameList = class(TCustomControl)
  private
  protected
    procedure Paint; override;
  public
    { Public declarations }
  published
    property Align default alLeft;
  end;

implementation

{ TGameList }

procedure TGameList.Paint;
begin
  inherited;
end;

end.
4

1 に答える 1

11

この種のエラーは、パッケージが適切に再ビルドされていない場合によく発生します。次に、ユニット「GameListCtrl」を含むパッケージ プロジェクトを開き、パッケージを再構築する必要があります。RAD Studio に C++ Builder ファイルを作成させるオプションを有効にしてください。

それでも問題が解決しない場合は、リンカが間違った / 古い D​​CU または obj ファイルを選択している可能性があります。すべてのドライブを検索し、見つかったすべての GameListCtrl.dcu および GameListCtrl.obj ファイルを削除します。JAM Software の UltraSearch を使用して、ローカル ドライブをすばやく検索します。NTFS 構造で直接動作するため、Windows Search よりもはるかに高速です。

プロジェクト オプションで、プロジェクトの静的リンクへの切り替えを試みることもできます。

于 2013-05-27T07:00:52.997 に答える