BDS2006(C++Builder)でツールパレットに登録しないでActiveXコンポーネントを使用する

BDS2006(C++Builder)でツールパレットに登録しないでActiveXコンポーネントを使用する方法です。

例としてScriptControlを使用します。

  1. メニューから[ファイル]-[新規作成]-[VCL フォームアプリケーション]を選択します。

    新しいプロジェクトが作成されます。

  2. メニューから[コンポーネント]-[コンポーネントのインポート]を選択します。

    「コンポーネントのインポート」ダイアログが表示されます。

  3. 「タイプライブラリの取り込み」を選択して、「次へ」ボタンをクリックします。

  4. 「登録されたタイプライブラリ」から「Microsoft Script Control 1.0」を選択して、「次へ」ボタンをクリックします。

  5. 「ユニットディレクトリ名」にユニットを保存するディレクトリを選択して、「次へ」ボタンをクリックします。

    「パレットページ名」は、パレットに登録しないので「(none)」のままにしました。

  6. 「Project1.bdsprojプロジェクトにユニットを追加」を選択して、「完了」をクリックします。

以上で、準備ができました。

フォームに TEdit と TButton を貼り付けて、TButton のクリックイベントを記述します。

#include "MSScriptControl_OCX.h"

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  TScriptControl* sc = new TScriptControl(this);
  sc->Language = "VBScript";
  Edit1->Text = VarToStr(sc->Eval(WideString("FormatDateTime(Now())").c_bstr()));
  delete sc;
}

TEditに現在の日時が表示されます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください