BDS2006(C++Builder)でツールパレットに登録しないでActiveXコンポーネントを使用する方法です。
例としてScriptControlを使用します。
- メニューから[ファイル]-[新規作成]-[VCL フォームアプリケーション]を選択します。
新しいプロジェクトが作成されます。
-
メニューから[コンポーネント]-[コンポーネントのインポート]を選択します。
「コンポーネントのインポート」ダイアログが表示されます。
-
「タイプライブラリの取り込み」を選択して、「次へ」ボタンをクリックします。
-
「登録されたタイプライブラリ」から「Microsoft Script Control 1.0」を選択して、「次へ」ボタンをクリックします。
-
「ユニットディレクトリ名」にユニットを保存するディレクトリを選択して、「次へ」ボタンをクリックします。
「パレットページ名」は、パレットに登録しないので「(none)」のままにしました。
-
「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に現在の日時が表示されます。