[最終更新日 1999/03/06]

作ろう!コンポーネント


最初の準備

DelphiやC++Builderでアプリケーションが書けるようになると、次の目標はコンポーネント作成でしょう。ここではそのコンポーネント作成を前にして、最初に知っておいて欲しいことを書いておきます。ここは気楽に読んで、次のステップへ進んでください。


  1. 何を作るのか

    まず最初に考えるべきことは、どんなコンポーネントを作るか。ということでしょう。
    ここでは例題として、数値(0〜999999)のみを入力できるコンポーネントを作成しましょう。ありふれた機能なので、求めていたコンポーネント作成と違うとがっかりしてはいけません。簡単なコンポーネントでも自分で入力し作成すれば、基本的動作を理解することができ、次のステップへ進みやすくなります。


  2. 上位クラスに何を選ぶか

    ここで考えたコンポーネントのベースとして1行入力コンポーネントであるTEditを継承するのが一番楽そうです。そこでTUIntEdit(※1)という名前にしてカスタムコンポーネントを作成すること考えます。

    上位クラスを選ぶのは簡単なようで結構難しいものです。最初はTEditで良いと思っていても、余計なプロパティやメソッド、イベントがあるかもしれません。でも、安心してください。そういう要望もあるだろうとVCLの開発者はTCustomEditを用意してくれています。コンポーネント開発に慣れて来れば、TEditかTCustomEditのどちらを使うかを見分けることも可能になります。

    (※1)C言語でいうUnsigned Intの略です。


  3. 名前の重要性

    よくTMyCompやTCompoExを見かけますが、これは自分のところでテストするために使う名前です。インターネットやニフティ等では数百というコンポーネントが存在し、色々な名前が使われています
    もし、あたなが公開を目的としたコンポーネントを作成するなら、コンポーネントのクラス名には十分注意しましょう。既に存在するコンポーネント名と重複した場合、使うユーザーが困ることになると思います。

    といっても最初からここまで考える必要性はありません(^^; 最初はTMy…とかT…Exで作っていきましょう。そして、公開できる思えたときに考えてください。


  4. 困ったときはどうすれば良いか

    コンポーネント作成は試行錯誤の連続です。
    最近でこそDelphiやC++Builderの書籍が増えてきていますが、それでも情報は不足しています

    ではどうするのでしょう。ここを見ている皆さんはインターネットを利用してますね。ではDELPHI-MLやニフティのFDELPHIを利用すべきです。最初はその情報量と内容についていけないと感じるかもしれませんが、分かるところから読めば良いのです。そして困っていることを聞いてみましょう。他にもニュースやWeb上に情報が多くあります。

    ただし、聞く前に十分調べてクリアできない情報を聞きましょう。ヘルプで簡単に探せる情報を聞くのはダメですよ。また自分の開発環境(バージョン、LRN、STD、PRO、CSS等)、OS、何をしたいか、何が問題かを整理して聞くと大体返答があります。答えをもらったら、お礼といっしょにその情報をまとめて返答しましょう。そうすることで後から見た人も、その恩恵を受けることが出来るのです。

    こうしたところを巧く使い、質問、返答、検索に慣れれば、あなたの実力は見る見る間にアップするはずです(笑)


まとめ

ここではコードは一切でてきません。最初に知っておくと得をする情報(ほんとうかなぁ?)を書いたつもりです。
コンポーネントの動作はコードさえ書けば色々できますが、親となるコンポーネントを良く知っておけば、余計なコードを書かなくて済みます。

さて次は実際にコンポーネントを作成してフォームに表示するところまでチャレンジです。
レッツ、トライ!コンポーネント


戻る