Windows Media Player のように、「コンポーネント」→「ActiveX コントロールの取り込み」によって取り込まれるコントロールのことを、「ActiveX コントロール」と呼びます。取り込んだ後は、Delphiに (元々) 用意されているコンポーネントと同様に使えましたね。違いは、ActiveX コントロール (の中身が) Delphi だけではなく、C++ や Visual Basic 等、他の言語で記述されていても構わないという点です。以前は、他の言語で記述されたコントロール (コンポーネント) を共有することはできませんでした (たとえば、VisualC++ で作ったコントロールを Delphi で使うことはできませんでした)。これを共通で使えるようにしたものが ActiveX コントロールなのです。
どんな言語でコントロールを作っても、それを ActiveX コントロールにしておけば別の言語でも利用することが出来ます。そのため、Windows Media Player に限らず Internet Explorer や RealPlayer など多くのソフトウェアは、インストールされると同時に ActiveX コントロールも用意されています。
Internet Explorer の ActiveX コントロールを用いて、
![]() |
エディットに URL (アドレス) を入力して「移動ボタン」を押すと |
![]() |
そのページが表示される、というごく単純な HTML browser を作ってみましょう。 |
まずは、「コンポーネント」→「ActiveX コントロールの取り込み」で「Microsoft Internet Controls」をインストールします。
すると、コンポーネントパレットに「WebBrowser」というコンポーネントが現れます。(もう1つ、「WebBrowser_V1」という似たようなコンポーネントも現れますが、今回使うのは「WebBrowser」の方です。)
注意 Delphi Professional 版以上には最初から「WebBrowser」コンポーネントは用意されています。
このコンポーネントを用いて、次のようにフォームを作ってください。
コンポーネント | Name プロパティ |
---|---|
エディット | EditURI |
「移動」ボタン | ButtonGo |
ブラウザ | WebBrowser1 |
「移動」ボタンのイベントハンドラを次のようにします。
procedure TForm1.ButtonGoClick(Sender: TObject); begin WebBrowser1.Navigate(EditURI.Text); end;
これで完成です。実行し、エディットに http://www.yahoo.co.jp/ と入力して「移動」ボタンを押してみましょう。Yahoo! のページが無事に表示されましたか?
Delphi に最初から備わっているコンポーネントなら、「F1」を押してヘルプを開くことによって、どんなプロパティ・メソッド・イベントがあるか、自分に必要なプロパティ・メソッド・イベントは何か、を調べることが出来ます。しかし、取り込んだ ActiveX コントロールの場合、「F1」によるヘルプは用意されていません。そのため、取り込んだ ActiveX コントロールのプロパティ・メソッド・イベントを調べるためには、MS-Access / MS-Excel / MS-Outlook / MS-PowerPoint / MS-Word / VisualBasic のどれかを使います。
上記のどれも持っていなくても、http://www.asia.microsoft.com/japan/developer/vbasic/controls/controls.htm から「VisualBasic 5.0 Control Creation Edition SP2」を無料でダウンロードし、インストールすることができます。7.32MB です。
![]() |
まずは「ツール」→「マクロ」→「Visual Basic Editor」を開きます。 |
![]() |
この Visual Basic Editor の上で、「表示」→「オブジェクト ブラウザ」を選びます。 |
![]() |
これでオブジェクトブラウザが起動するので、「ツール」→「参照設定」を開き、 |
![]() |
必要な「ライブラリ ファイル」(この場合は「Microsoft Internet Controls」) をチェックし、「OK」を押します。 |
![]() |
まずは、「プロジェクト」→「参照設定」を選びます。 |
![]() |
必要な「ライブラリ ファイル」(この場合は「Microsoft Internet Controls」) をチェックし、「OK」を押します。 |
![]() |
次に、「表示」→「オブジェクト ブラウザ」を選びます。 |
![]() |
「<すべてのライブラリ>」と書かれた部分から、自分が調べたいライブラリ (この場合は「SHDocVw」) を選びます。 |
![]() |
自分が調べたいクラス、自分が調べたいメソッドを順にクリックします。すると、オブジェクトブラウザの下部に簡単な説明が表示されます。 |
なお、右側の欄に出てくるアイコンは、
![]() |
プロパティ |
![]() |
手続き・関数 |
![]() |
イベント |
という意味です。
オブジェクトブラウザから適切な手続きを探し出し、「戻る」ボタンを付け加え、そのボタンを押すと直前のページが表示されるようにしてください。