ホーム ] アプリ ] クイックソートライブラリ ] グリッドコントロール ] EXIF情報ライブラリ ] 実行時間計測ラブラリ ] 多倍長演算ライブラリ ] 多倍長演算ライブラリU ] 画像処理ライブラリ ]

上へ
コンポーネント開発
イベントの捕捉
開発の手順
FreeGridの構成
データソース
セル更新

技術解説

開発の手順

最終更新日:2007/04/17  全面改訂

●概要

 製品開発ではないので、お気楽に開発すれば良い。また、RADツール(VB.NET)を使っているのだから、最大限それを生かすのが良い。

●何が欲しいのか?

 初めにありき、ではなく、エンドユーザとして何が欲しいかである。つまり、ユースシナリオから始まる。FreeGridでは、

  • エクセルのような二次元の表を簡便に表示したい
  • 但し、演算機能はいらない
  • データは数値、文字列、日付、画像など
  • データソースは、個別、配列、データベースとする
  • 行またはセルを選択したい
  • 内容を更新したい
  • 縦、横のサイズは任意で、表示範囲は可変
  • 表示では、縦書きが欲しい
  • 見出しがあれば便利

が、始まりである。上記のような具体的でもあり漠然とした要望でもあるものを元に、必要な機能の抽象化を行う。

●抽象化

 以下の最小限の機能定義から出発した。RADなので、これらを実現しつつ、仕様を膨らませて行けば良い。VBの場合は、お決まりの部分や、お約束の部分は、隠蔽されており、システム側で自動的にコードされるので、プログラマは本来の仕様や機能に集中できるのである。

 プロパティ、メソッド、イベントの追加はものすごく簡単なので、初期に全てを決める必要はない。基本的に、それらが独立的であればあるほど、後での追加は全く他に影響なくできる。影響がある場合は、機能の抽象化がうまく行ってないことになる。

○主機能

 二次元情報を表として表示する。

○扱う情報

  • 数値、文字列、日付、画像などとなるので、内部ではObject型とし、特定の型処理はしない。
  • 情報源は、セル個別、配列、データベースのテーブル、データロー群とする。
  • 表示情報は文字列、ビットマップとなり、内部情報から自動的に派生する。
  • 表示の際ある程度のフォーマットを指定できるが、殆どは決め打ちとする。

○内容更新

 セルの内容は、Freegridでは特定できないので、全てユーザがコードするが、そのUIを提供する。

○主要イベント

 ユーザがセルや行を選択したときは、その場所を特定する情報を確定させ、イベントを生起する。