ついに Delphiの最新版「5」が届きました。広告やネットではエンタープライズ向けの新機能ばかりが紹介されたせいか、個人プログラマでは買い控えをする方々もいたようです。確かに今回の Delphi にはこれと言った目玉機能が無いように見えます。果たして本当にそうなのでしょうか?DAFでは Delphi5 Professional版を使って Delphi5の真の魅力に迫ります。なんちゃって。


コンポーネント

Delphi5(Pro)で新しいコンポーネントは思ったより増えていません。
もともと多いのでこれでも十分なんですが。。

  • TFrame
  • TApplicationEvents
  • InterBase系
  • TWebBrowser
  • OLE Server系

  • TFrame

    フレームはコンポーネントのコンテナで、コンポーネントの作成がさらに楽になる素晴らしいコンポーネントです。では作成手順を見てみましょう。

    1.新規作成で「フレーム」を選択します。すると格子の無いフォームみたいなウィンドウが出てきます。

    2.フォームを作成する感覚でコントロールを配置してコンポーネントをデザインします。完了したら保存します。

    3.Form1に戻り "Standard" ページにある TFrameをフォームの上に配置します。
    するとダイアログが開き、フレームを選択することができます。
    そこで先ほどつくったフレームを選択します。ってそれしか無いんですが。

    4.[OK]をクリックするとさっき作ったフレームがペタっとフォームに貼り付きます。
    おお!すごい!

    たったこれだけでコンポーネントが完成するのです。お手軽ですね。
    これは業務アプリなどを開発している人たちにとっては特に素晴らしい機能になるでしょう。さて、フレームコントロールをもう少しいじってみましょう。
    驚いた事に他のコンポーネントと違いフレーム内のコントロールは自由に
    移動したりイベントを追加したりできるのです。フォーム上からフレーム内のコントロールにアクセスすることも可能です。

      Frame1.Edit1.Text  :=  'Hello!';

    当然、フレームを修正すればそれを使用したフォーム上のフレームもすべて変更が適用されます。
    ただし、フレームの Publishedにプロパティを追加してもオブジェクトインスペクタには
    出ないようです。これは私のやり方が悪いのかも知れませんが。


    TApplicationEvents

    これは今までコード上で関連づけていた TApplicationのイベントをコンポーネント化したものです。特に試すような事も無いのですが、このコンポーネント、フォーム上に二個も三個も配置できます。試しに二個配置して両者の OnActiveイベントにイベントを記述してみます。するとどうでしょう。

    片方しか動作しません。まーこんな事する方が悪いんですけどね。


    InterBase系(Pro)

    IBTable、IBQuery、IBStoredProc、IBDatabaseなど、DataAccessコントロールの
    InterBase版が収録されています。これらのコントロールは DataAccessコントロールとは若干違うようです。IBQueryの SQLのダイアログは TQueryとは少し違います。
    あれ?IBQueryのSQLは エディタで編集できないのでしょうか?
    と思っていたら IBSQLというコンポーネントもありました。こっちは SQLがエディタでも編集可能です。ちなみに Pro版には SQLビルダが付いてきません。


    TWebBrowser(Pro)

    HTMLブラウザをコンポーネント化したものです。
    IEをOLEサーバーとして利用しているだけなので HTMLの表現力などは IEそのままです。IEの設定がまずいとこのコンポーネントも動作しないので注意して下さい。
    メソッド名やイベント名に見慣れない物が上にヘルプが無いのでちょっととまどうかも知れません。

     WebBrowser1.Navigate('http://www.inprise.com/');
     WebBrowser1.Navigate('D:\homepage\delphi\index.html');

    Demosフォルダの Coolstufフォルダにサンプルがあります。


    OLE Server系(Pro)

    Serversページには Excelやら Wordなどのアイコンがびっしりと並んでいます。これもやはりヘルプがありませんが OLEオートメーションの経験があればなんとかなると思います。と、思ったんですがどうにもこうにもよく分かりません。興味のある方はDemosフォルダに Word連携のサンプルがあるのでそれをご覧になって下さい。サンプル内のコメントは日本語化されています。
    Servers系のソースコードは Delphi5\Ocx\Servers\ にあります。


    [ NEXT ]