5

コンポーネントが自動的Delphi 7にドロップされるプロジェクトDelphi 2006のファイルに追加する必要があるユニットを使用しています。.dprEureka Log がユニット 'ExceptionLog' をプロジェクト ファイルに自動的に追加する方法と同様に、次のようになります。

ここに画像の説明を入力

プロジェクト内の任意のフォームにコンポーネントをドロップしたときに、プロジェクト ファイルにプログラムでユニットを追加する方法を誰か教えてもらえますか?

4

3 に答える 3

7

そのためには、おそらくOpenToolsAPIを使用する必要があります。

また、ユニットの追加をトリガーするために、コンポーネントのTSelectionEditorを作成する必要がある場合もあります(RequiresUnitメソッドを試してみます)。

アクティブなプロジェクトにユニットを追加する簡単な方法がありますが(以下のコード)、これは、コンポーネントを追加しているフォームが属するプロジェクトではない可能性があるアクティブなプロジェクトに対してのみ機能します。また、uses句の最後にユニットを追加します。

uses
  ToolsAPI;

var
  currentProject: IOTAProject;
begin
  currentProject := GetActiveProject();
  currentProject.AddFile('MyUnit.pas', True);

GExpertsのソースコードには、ユニットを解析してuses句を変更できるクラス(TUsesManager)が含まれているため、確認できます。

于 2012-04-24T11:35:01.873 に答える
0

奇数。

以前は、デフォルトのdprにほとんど何も含まれないように設定していたため、ツールボックスは非常に空でした。それで、それが私のツールボックスにあった場合、それはdprにありました-あなたは何に問題がありますか-通常、それがツールボックスにある場合、それはすでにdprにあります。

于 2012-04-24T07:19:00.123 に答える
0

Project > Eurekalog Options に移動し、Eurekalog を無効にします。

于 2012-04-24T10:33:42.717 に答える