CodeZine(コードジン)

特集ページ一覧

マウスで線を結ぶだけでデータとUIコントロールを連携させる

Delphi XE3、C++Builder XE3のVisual LiveBindingを使ってみる

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2012/09/13 15:06

目次

そこでLiveBinding

FireMonkeyフレームワーク

 Delphi / C++Builderでは、昨年のリリースでFireMonkeyという新しいコンポーネントフレームワークを導入しました。

図2 視覚的に訴えるアプリケーションを作成できるFireMonkey

 特長は3つあって、まず、マルチプラットフォーム対応であること。WindowsとMac OS X向けのGUIアプリケーションを構築できます。次に、ネイティブであること。CPU/GPUのフルパワーを使ってハイパフォーマンスで動きます。マルチプラットフォームだからといって性能では劣るということはありません。そして3番目は、ビジュアル的に優れていること。HD/3Dの高品質なグラフィックを使ったコンポーネントを利用できます。

LiveBindingとは

 こういう高機能なUIが出てくると、先に挙げた問題に新しいテクノロジーで対応する必要性が増してきます。LiveBindingはそのための機能として用意されていますが、簡単にまとめると、次のようなことをしてくれます。

  • UIコントロールのプロパティとオブジェクトを結び付けます
  • オブジェクトの値が変更されると、UIコントロールのプロパティを変更します
  • UIコントロールのプロパティが変更されると、オブジェクトの値を変更します

 これで何ができるようになるかというと、

  • UIコントロールとデータセットのフィールドを結び付け、表示・編集を自動化します
  • UIコントロール同士を結び付け、一方のコントロールに対する変更によって他方の状態を変化させることができます(例えば、チェックボックスをクリックすると入力ボックスが無効になるといった処理)
  • UIコントロールと任意のオブジェクトを結び付け、オブジェクトの表示・編集を自動化します

 これらは、いずれもコードを一行も記述しません。コンポーネントに用意されたLiveBindingのプロパティを設定するだけで、UIコントロールとデータを同期/変更ができます。

LiveBindingをビジュアルに

Delphi / C++Builder XE3の新機能Visual LiveBinding

 先日発売されたDelphi / C++Builderの最新バージョン「XE3」では、このLiveBindingが使いやすくなっています。その名も「Visual LiveBinding」。マウス操作で、ビジュアルにLiveBindingの設定ができるというツールです。

 UIコントロールは画面上に複数ありますし、データにもさまざまなフィールドがあります。これらを結び付ける作業は、前バージョンではオブジェクトインスペクタで行っていました。オブジェクトインスペクタは、選択したコンポーネントのプロパティを設定するために使います。

図3 オブジェクトインスペクタ

 複数あるUIコントロールにデータを結び付けるには、コンポーネントをひとつずつ選択して設定を行わなければなりませんし、どのような設定がなされているのか俯瞰することができません。

LiveBindingデザイナ

 Visual LiveBindingでは、LiveBindingデザイナというツールを使います。

図4 LiveBindingデザイナ

 ご覧のような画面で、データ(左のBindSourceDB1)とUIコントロール(Edit1、Memo1など)を結び付けます。「マウスを線で結ぶだけでデータとUIコントロールを連携させる」そのままですね。

 早速簡単なアプリケーションを作成して確認してみましょう。Visual LiveBindingはDelphi / C++Builderのどのようなアプリケーションでも利用できます。XE3では、Windows APIをカプセル化してWindows向けのビジュアル開発が可能なフレームワークVCL(これはDelphi 1の頃からありますね)と、Windows / Mac OS Xでクロス開発ができるFireMonkeyフレームワークを使用できます。Visual LiveBindingは、このどちらでも利用可能です。

 ここでは、FireMonkeyアプリケーションを作成してみましょう。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • EDN編集部(イーディーエヌ編集部)

    エンバカデロ・デベロッパーネットワーク(EDN)は、ソフトウェア開発者とデータベース技術者のための技術情報サイトです。Delphi、C++Builderをはじめとする開発ツールやER/Studioなどのデータベースツールに関連する技術記事、ビデオなどを提供しています。EDN編集部は、EDN記事と連携...

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5