|
DelphiXE4 [FireMonkey] フォーム 2015/03/25 |
FireMonkeyアプリケーション、まずはフォームから見ていきます。
DelphiXE3 についてはこちら。
XE4 | XE3 |
FMX.Forms.TForm | FMX.Forms.TForm |
| |
| |
こうして比較してみると、結構違っているのが分かります。
(追加)Borderプロパティ |
FMX.Forms.TFormBorder
カスタム スタイルを指定したフォームの境界を作成するときに使われる機能を実装したものです。 |
Stylingプロパティがありますが、ヘルプに記載がありませんので詳細は分かりません。
(削除)EnableBorderStylingプロパティ |
上記の Borderプロパティに変更されたのかもしれませんね。
XE3 でもこのプロパティは無効化?されたりしていましたので廃止されたのかもしれません。
FormFactorプロパティ |
FMX.Forms.TFormFactor
複数のデバイス(PC、iPad、など)の間でフォームを共有するため、さまざまな表示オプションを指定するのに使用されます。
TFormFactor では、画面の幅と高さ、フォームが使用されるデバイス、設定可能な向きを定義します。 |
Devicesプロパティ内容が増えています。
ターゲット デバイスの種類を列挙したものを表します。
dkDesktop | ターゲットプラットフォームはデスクトップ コンピュータです。 |
dkiPhone | ターゲットプラットフォームは Apple 社の携帯電話(iPhone)です。 |
dkiPad | ターゲットプラットフォームは Apple 社の iPad デバイスです。 |
|
(追加)FullScreenプロパティ |
FMX.Forms.TForm.FullScreen
フォームが全画面モードかどうかを示します。
FullScreen を使用すると、フォームが全画面モードかどうかを示すことができます。効果を発生させるには、ShowFullScreenIcon プロパティは True に設定しなければなりません。 |
(追加)ShowFullScreenIconプロパティ |
FMX.Forms.TForm.ShowFullScreenIcon
Mac の全画面アイコンを表示するかどうかを示します。
ShowFullScreenIcon を使用すると、Mac の全画面アイコン Fullscreen.png を表示するかどうかを指定することができます。FullScreen が効果を持つようにするには、ShowFullScreenIcon に True を設定する必要があります。
メモ: Windows の場合、ShowFullScreenIcon に表示効果はありませんが、FullScreen に効果を持たせるためには設定が必要となります。 |
ヘルプの「Delphi XE4 および C++Builder XE4 の新機能」に以下の記述があります。
Mac OS X フルスクリーン モード
FireMonkey では、Mac アプリケーションの右上隅に 2 つの矢印のアイコンが表示されて、フルスクリーン モードへの切り替えや同モードからの切り替えを行えるなど、フルスクリーン モードがサポートされています。
フルスクリーン アイコンを有効にするには、ShowFullScreenIcon プロパティを使用します。
アプリケーションをフルスクリーン モードで開始するには、FullScreen プロパティを使用します。
詳細については、「Mac OS X のフルスクリーン モード」を参照してください。 |
RAD Studio では、Mac OS X をターゲット プラットフォームとする FireMonkey アプリケーションのフルスクリーン モードをサポートしています。フルスクリーン モードはバージョン 10.7.x(Lion)以降の Mac OS X で使用可能です。
Mac のウィンドウでは、フルスクリーン アイコンが右上隅に表示されます:
・アプリケーションをフルスクリーン モードにするには、(アイコン)をクリック。
・フルスクリーン モードを解除するには、Esc キーを押す。 |
との事で、MacOSX 専用の機能のように見えますが、Windowsでもフルスクリーン状態(タイトルバー等のない、クライアント領域だけが全面に表示される状態)になります。Windowsでは Escキーを押しても反応ありませんし、画面上に[閉じる]ボタン等を配置しておかないと混乱しそうです。([Alt]+[F4]での終了は可能)
ヘルプの「Delphi XE4 および C++Builder XE4 の新機能」に以下の記述があります。
FireMonkey コントロールのマージンとパディング
FireMonkey XE4 では、Margins と Padding の動作が、以下のように入れ替わっています。
・Padding を指定すると、その分だけコントロールの内側に余白が付け加えられます。
・Margins を指定すると、その分だけコントロールの外側に余白が付け加えられます。
これで、FireMonkey のマージンおよびパディングが、CSS のボックス モデルや、VCL で使用されている確立した定義に従ったものになりました。
Margins および Padding の使い方の詳細は、「マージンとパディングを使った整列」および「FireMonkey コンポーネントのレイアウト関連共通プロパティを使用する」を参照してください。 |
(追加)Qualityプロパティ |
FMX.Forms.TForm.Quality |
FMX.Types.TCanvasQuality
TCanvasQuality = (ccSystemDefault, ccHighPerformance, ccHighQuality); |
ヘルプに記載がありませんので詳細は分かりませんが、高速性を優先するか、高品質を優先するか、という切替みたいな感じでしょうか?
Touchプロパティ |
FMX.Forms.TForm.Touch
コントロールに関連づけられているタッチ マネージャ コンポーネントを示します。
Touch プロパティを使用すると、コントロールに関連づけられているジェスチャ オプションにアクセスできます。 Touch には、TTouchManager 型のクラスを指定します。
Touch は、以下の目的で使用されます:
・TGestureManager を関連付けます。
(TGestureManager は、コントロールが使用できるすべての標準ジェスチャを管理します。)
・標準、対話型、もしくはカスタム ジェスチャのうちのどれをコントロールに関連付けるかを選択します。 |
InteractiveGesturesプロパティ内容が増えています(igLongTap、igDoubleTap)。
FMX.Types.TInteractiveGestures
対話型ジェスチャの集合を示します。
TInteractiveGestures は対話型ジェスチャの集合です。
TInteractiveGestures の取り得る値は以下の 1 つ以上です。
igZoom | "ズーム" および "ピンチ" ジェスチャ。2 本指での操作が必要です。 |
igPan | "パン" ジェスチャ。スクロールに使用されます。1 本指で使用できます。 |
igRotate | "回転" ジェスチャ。UI 要素を回転するのに使用されます。指が 2 本必要です。 |
igTwoFingerTap | "ツー フィンガー タップ" ジェスチャ。指が 2 本必要です。 |
igPressAndTap | "プレス アンド タップ" ジェスチャ。押したままにする動作とタップにそれぞれ 1 本ずつの、2 本の指が必要です。 |
igLongTap | "ロング タップ" ジェスチャ("タップ アンド ホールド" や "長押し" などとも呼ばれます)。押したままにする操作とタップ操作にそれぞれ 1 本ずつ、合計 2 本の指が必要です。コピーなどのコマンド(画像の場合)、テキスト編集コマンド、虫眼鏡 TMagnifierGlass(TMemo の場合)のいずれかを起動します。 |
igDoubleTap | ダブルクリックと似ています。ゾンビの世界で生き残るための基本的なルールの 1 つ。 |
|
ヘルプの「Delphi XE4 および C++Builder XE4 の新機能」に以下の記述があります。
iOS 向けのタッチおよびジェスチャ
FireMonkey では、iOS アプリケーション向けのタッチおよびジェスチャをサポートしています。
以下の対話型ジェスチャが FireMonkey iOS アプリケーションでサポートされています。
・ロングタップ(タップ アンド ホールド、長押し):新規、iOS の場合のみ
・ダブルタップ:新規、iOS の場合のみ
・パン
・回転
・2本指タップ
・ズームおよびピンチ
FireMonkey コントロールに対話型ジェスチャを関連付けるには、[オブジェクト インスペクタ]でコントロールの Touch プロパティを見つけ、対話型ジェスチャのリストから選択します。
ジェスチャの詳細については、「FireMonkey でのジェスチャ」を参照してください。 |
というわけで、iOS向けの新機能のようですから私には関係なさそうです。
ヘルプに説明文がありませんので詳細は分かりませんが、フォームがフォーカスを受け取ったとき(アクティブになった時)・失ったとき(非アクティブになった時)、のことではなく、フォーム内のコントロールのフォーカスが移動した時に発生するイベントのようです。
それではスタイルの確認だけしておきます。
下記のようにコンポーネントを配置します。
*.Style | Windows | MacOSX |
なし | | |
Air | | |
Amakrits | | |
AquaGraphite | | |
Blend | | |
Dark | | |
GoldenGraphite | | |
Light | | |
MetropolisUIBlack | | (使用不可) |
MetropolisUIBlue | | (使用不可) |
MetropolisUIDark | | (使用不可) |
MetropolisUIGreen | | (使用不可) |
RubyGraphite | | |
Transparent | | |
見て分かるように、タイトルバーと文字の感じ以外では、WindowsとMacOSXとの違いはほとんど無い感じです。ですので、次回以降では、MacOSX でのスタイル別表示は記述しません。また、MetropolisUI〜のスタイルは MacOSX では使用出来ませんので、次回以降では Windowsでも使用しない事とします。FireMonkey(FMX)=クロス開発=Win/Mac両用でなければ意味がありませんので。
|
|
バッチファイル
BASIC
C言語のお勉強
拡張子な話
DOSプログラム
Delphi
>Delphi入門編
>Delphi2010
>DelphiXE3
>DelphiXE4
△TOP
▲2015/03/24
2015/03/25
▼2015/03/26
シェアウェア
Script!World
データベース
|