Watch, Follow, &
Connect with Us

Team Japan

InterBase XE 日本語版 Update 4 がリリースされました

本日、InterBase XE 日本語版 Update 4 がリリースされました。
リリース内容については、
[InterBase XE Update 4 Readme(日本語)]
http://docs.embarcadero.com/products/interbase/IBXEUpdate4_JP/IB_XE_ReadMe_JP.html
を参照してください。
すでにInterBase XEをインストール済みの環境向けにはアップデータも用意されています。製品登録済みユーザーページ http://cc.embarcadero.com/myreg/interbase より
・InterBase XE 64-bit Update 4 (10.0.4.590) for Windows - Japanese
・InterBase XE 32-bit Update 4 (10.0.4.590) for Windows - Japanese
・InterBase XE Update 4 (10.0.4.590) for Linux - Japanese
をダウンロードしてご利用ください。また、Update 4が適用済みのフルインストーラもございます。併せてご利用ください。
・InterBase XE Desktop Edition for Windows (Japanese)
・InterBase XE Server Edition multi-platform (10.0.4.590,Japanese)

また、製品のトライアルや開発目的用に利用できる「トライアル版」「Developer Edition」もダウンロード可能になっています。
[ダウンロード - FREE TRIALS]
https://downloads.embarcadero.com/free/interbase
[トライアル版]
InterBase XE (10.0.4.590) 64-bit Server Edition Trial, Windows - Japanese
InterBase XE (10.0.4.590) 32-bit Server Edition Trial, Windows - Japanese
InterBase XE (10.0.4.590) 32-bit Server Edition Trial, Linux - Japanese
[Developer Edition]
InterBase XE 64-bit Developer Edition for Windows - Japanese - Japanese
InterBase XE 32-bit Developer Edition for Windows - Japanese - Japanese
InterBase XE (10.0.4.590) 32-bit Developer Edition, Linux - Japanese

Posted by Tomohiro Takahashi on May 16th, 2012 under C++, Database, Delphi, Java | Comment now »


TMS IntraWeb iPhone Controls PackでAndroid向けWebアプリ

高橋(智)です。

昨日のプログ記事では、Delphi XE2のIntraWebとTMS IntraWeb iPhone Controls Packとを組み合わせてiOSのSafari向けWebアプリを作成しました。

しかし、AndroidエミュレータのWebブラウザで表示してみると、まるでデスクトップ向けWebアプリのような表示になってしまいました…。

そこで、WebフォームのExtraHeaderプロパティに例えば、

<meta name="viewport" content="initial-scale=1.0">

を追加してみます。

たったこれだけで、とりあえずAndroidのWebブラウザでもそれらしく表示されるようになりました。

Posted by Tomohiro Takahashi on May 11th, 2012 under C++, Delphi, Mobile | Comment now »


ネイティブ言語DelphiでiOS向けWebアプリ

高橋(智)です。

今日は、Delphi XE2 Enterprise Editionのネイティブ言語によるWebアプリ開発を可能にした「IntraWeb(VCL for the Web)」に、iOSのSafari対応コンポーネント「TMS IntraWeb iPhone Controls Pack」(価格は€95)をインストールして、その開発効率の良さをご覧いただこうと思います。

1. まず、通常のIntraWebのWebアプリケーションプロジェクトを作成したら、メインフォーム内に「TIWIPhoneRegion」を配置します。このTIWIPhoneRegionが1個で、iOSのWebページ1個分に相当します。以下のように、2画面分のTIWIPhoneRegionと、モバイル向けのボタン「TTIWIPhoneButton」やページ遷移を行うための「TTIWIPhonePageFlip」を配置しました。

2. ページ遷移を行う際の画面と画面をプロパティで指定しておきましょう。

3. ボタンを押した際のイベントハンドラはAjaxで動作し、さらにネイティブ言語Delphiで動作するWebサーバー側に制御が移ります。そのイベント中では、遷移用のメソッドを呼び出すだけです。

4. 記述したコードは上のたった2行ですが、とりあえずターゲットを64bitに設定してビルド&実行します。iOSのSafariからアクセスしてみると、画面遷移が行えました。簡単ですね〜。

Posted by Tomohiro Takahashi on May 10th, 2012 under C++, Delphi, Mobile | 1 Comment »


Delphi XE2 - FireMonkey 2D/HDアプリに box2d-delphi を組み込む

高橋(智)です。

昨日のブログ記事では、C++Builder XE2に2次元向け物理シミュレーションエンジン「Box2D」を組み込む手順を紹介しました。今日は、Delphi XE2で作成するFireMonkey 2D/HDアプリケーションに、Box2DのDelphi移植版box2d-delphi」を組み込んでみようと思います。

シミュレーションの内容は、C++Builderと全くおなじで矩形が上から下に落下するものです。

1. FireMonkey HDアプリケーションのプロジェクトを新規に作成したら、box2d-delphiのファイル一式(.pas/.inc)をプロジェクト配下にコピーして、すべての必要なユニットをプロジェクトに追加します。

2. FireMonkeyのフォーム上に、シミュレーションを開始するTButtonや、落下する矩形を表現するためのTRectangleコンポーネントなどを配置します。

3. ボタンのイベントハンドラ内には、box2d-delphiに付属するSimpleデモのコードを貼り付け、さらに、Box2Dの矩形の位置などをFireMonkeyのTRectangleコンポーネントに反映させるためのコードを追加します。

4. Windows上でプロジェクトをビルドして実行すると、以下のような結果が得られました。

Posted by Tomohiro Takahashi on May 9th, 2012 under C++, Delphi, Mobile | Comment now »


C++Builder XE2 - FireMonkey 2D/HDアプリに Box2D を組み込む

高橋(智)です。

今日は、C++Builder XE2で作成するFireMonkey 2D/HDアプリケーションに物理エンジンを組み込んでみようと思います。今回利用するのは、オープンソース(zlibライセンス)で公開されている2次元向け物理シミュレーションエンジン「Box2D」です。元々はC++言語で実装されているものですが、現在はC++言語以外の言語(JavaScript, Delphi等)にも移植されています。

では、矩形が上から下に落下する様子をFireMonkeyとBox2Dを利用して簡易的に再現してみます。

1. FireMonkey HDアプリケーションのプロジェクトを新規に作成したら、Box2Dのファイル一式(.cpp/.h)をプロジェクト配下にコピーして、すべての.cppファイルをプロジェクトに追加します。

2. FireMonkeyのフォーム上に、シミュレーションを開始するTButtonや、落下する矩形を表現するためのTRectangleコンポーネントなどを配置します。

3. ボタンのイベントハンドラ内には、Box2Dに付属する最も簡単なHelloWorldサンプルのコードを貼り付け、さらに、Box2Dの矩形の位置などをFireMonkeyのTRectangleコンポーネントに反映させるためのコードを追加します。

4. Windows上でプロジェクトをビルドして実行すると、以下のような結果が得られました。

Posted by Tomohiro Takahashi on May 8th, 2012 under C++, Delphi, Mobile | 1 Comment »


最新の Indy 10 を C++Builder XE2 に統合する

高橋(智)です。

今日は、C++Builder XE2に付属しているネットワーク用コンポーネント「Indy 10」を最新版に置き換える簡単な方法を紹介しようと思います。

実は、以前のブログ記事「最新の Indy 10 を C++Builder(5からXEまで) に統合する」で、

[Indy Sockets for C++Builder™]

http://www.mjfreelancing.com/indy.htm

のWebサイトを紹介しましたが、つい先日、2012年5月4日付けの最新版「Indy 10 SVN revision 4745」を使用したビルドが公開されました。C++Builder XE2の場合には、「Indy10C16.zip」をダウンロードして展開しつつ、マニュアル(PDF)の手順に従います。ただし、そのマニュアルにはXEまでしか記載が無いので、

・2.2.1 Removing Indy - RAD XE

・2.2.3 Installing Indy 10 - Updating C++Builder XE

・2.2.4 Important Information

のセクションの記述内容を、C++Builder XE2に合わせて読み替える必要があります。

なお、MacOS X向けのビルドには対応していません。

Posted by Tomohiro Takahashi on May 7th, 2012 under Non Tech | 1 Comment »


RadPHP XE2 - mobiscrollで日付を選択する

高橋(智)です。

今日は、RadPHP XE2で作成するjQuery/jQuery MobileベースのモバイルWebアプリに、日付などを選択する便利なUIを追加する手順を紹介しようと思います。使用するのは、日付や日時の選択はもちろん、選択させる項目の内容や画面のルック&フィールも様々に変更可能なjQueryベースのJavaScriptライブラリ「mobiscroll」です。

1. RadPHP XE2でモバイルWebアプリのプロジェクトを作成したら、MEditコンポーネントを配置します。このMEditコンポーネントに入力フォーカスが来たら、日付を選択する画面を表示し、日付を選択したらMEditのテキスト領域に 2012/05/03 のような文字列を自動でセットさせることにします。

2. フォームのOnStartBodyイベントハンドラでは、mobiscroll(現時点の最新版 v2.0rc1 を使用しました)のJavaScriptファイルとCSSファイルを読み込むタグと、jQueryを利用してMEditとmobiscrollを結び付けるJavaScriptコードを記述します。mobiscrollのscrollerメソッドには、カスタマイズ用のオプションを渡しました。

3. AndroidエミュレータのWebブラウザでWebページにアクセスしたら、MEditにフォーカスを移します。すると、以下のような選択ダイアログボックスが表示されます。

4. 日付を選択してOKボタンを押すと、MEditのテキスト領域に 2012/05/03 と入力されました。

Posted by Tomohiro Takahashi on May 3rd, 2012 under Mobile, PHP | Comment now »


FireMonkeyアプリで独自アニメーションを定義する

高橋(智)です。

今日は、Delphi XE2(C++Builder XE2)のFireMonkeyが搭載するアニメーションクラスを拡張して、自前の計算式に従ってオブジェクトの座標(X,Y)を更新する方法を紹介しようと思います。

1. まず、Windows/MacOSX向けにFireMonkeyアプリケーションを作成し、フォームにTButtonとTCircleを配置しておきます。このTCircleオブジェクトのXY座標を移動させるのですが、そのときの軌道を放物線にしてみようと思います。

2. 自前の計算式によるアニメーション機能を定義するには、TAnimationクラスを派生させて、ProcessAnimationメソッドをオーバーライドします。ProcessAnimationメソッドをの実装コードでは、開始位置・終了位置および経過時刻を用いてボール(TCircle)のXY座標を計算しています。InterpolateSingle関数はFireMonkeyに内蔵されているもので、NormalizedTimeメソッドは親クラスのTAnimationクラスで提供されているものです。

3. フォームのOnCreateイベントでは、独自に定義したアニメーションクラスのインスタンスを生成して、アニメーションの対象にするTCircleのインスタンスを結び付けます。また、アニメーションを行う時間(期間)を3秒に設定します。ボタンのOnClickイベントハンドラでは、アニメーションを開始するStartメソッドを呼び出すだけです。

4. Windows/MacOSX向けにビルドしたアプリケーションを実行すると、3秒間かけて放物線上をボールが移動するアニメーションが確認できました。

5. 以上の設計・実装は、FireMonkey iOSアプリケーションでも全く同様です。同様のフォームをデザインし、全く同一のコードを流用して、同じアニメーション効果が得られました。

Posted by Tomohiro Takahashi on May 2nd, 2012 under C++, Delphi, Mobile | Comment now »


FireMonkey iOS 3Dアプリケーション: 3D空間を移動する

高橋(智)です。
来月になりますが、2012年5月30日(水)には大阪で、翌日の5月31日(木)には東京で「第22回 エンバカデロ・デベロッパーキャンプ」を開催いたします。私は64bitのC++BuilderやFireMonkeyに関するセッションを担当するため、少しずつ準備をしています。
さっき試しに作成したFireMonkey iOS 3Dアプリケーションのサンプル画面をご覧いただこうと思います。
以下は、Delphi XE2のIDEでの設計の様子および、Windows上での実行の様子です。ちなみに、このフォームデザインを実現するのに記述するコードは0行です。もちろん、ダンジョンの中を移動するには、カメラの視点(座標や角度)を変更しなければならないので、それは当日のセッション中で説明いたします。

Delphi XE2に付属するdpr2xcode.exeユーティリティを実行して、Xcode向けのプロジェクトを生成したら、XcodeでビルドしてiPhoneシミュレータで確認できるようになります。ご覧のように3Dゲーム(みたいなもの)が動作しています。

Posted by Tomohiro Takahashi on April 26th, 2012 under C++, Delphi, Mobile | Comment now »


RadPHP XE2: Ripple EmulatorでjQuery Mobile/PhoneGapアプリをテストする

高橋(智)です。

昨日のブログ記事では、Delphi XE2を使用したiOS向けコンパスアプリを作成しました。

そして今回は、jQuery MobileおよびPhoneGapを内蔵し、Webまたはネイティブなモバイルアプリを簡単にできるRadPHP XE2を使用して、同様のものを作成してみようと思います。

1. まず、RadPHP XE2で新規にモバイルWebアプリケーションのプロジェクトを作成します。フォームデザイナの背景はiPhoneにしておきます。

2. フォーム上に、PhoneGapのコンパスAPIをラップした「MCompassコンポーネント」を配置し、方位情報の更新間隔を3秒にしておきます。また、方位の値を表示するLabelコンポーネントと、方位磁石の画像を表示するImageコンポーネントも配置しておきます。

3. コードエディタでは、MCompassコンポーネントのOnChangeイベントハンドラに渡ってくる「方位の値(0〜359)」を使って、HTMLの文字列や画像を変更します。

4. ここまでで、一応モバイルWebアプリが完成しましたが、PhoneGapのAPIを利用するモバイルネイティブアプリとして動作を確認する必要がありますよね? XcodeでビルドしたiOSアプリをiPhoneの実機に転送しなくても、簡単にテストできるWebブラウザ環境があります。Google Chromeの拡張機能として Research In Motion(RIM)社の Ripple Emulator を統合しておけば、RadPHP XE2のIDEからモバイルWebアプリを直接ネイティブアプリとしてもデバッグ可能になります。

5. RadPHP XE2から作成したWebアプリを実行(またはデバッグ実行)する際にGoogle Chromeを起動するように設定しておき、Ripple Emulatorで試すと、以下のように簡単にPhoneGapの利用およびコンパスの値の取得がエミュレートできました。

Posted by Tomohiro Takahashi on April 21st, 2012 under Mobile, PHP | Comment now »




Server Response from: BLOGS2