FMX.Edit.TCustomEditModel

提供: RAD Studio API Documentation
移動先: 案内検索

FMX.Controls.Model.TDataModelFMX.Presentation.Messages.TMessageSenderSystem.Classes.TPersistentSystem.TObjectTCustomEditModel

Delphi

TCustomEditModel = class(TDataModel)

C++

class PASCALIMPLEMENTATION TCustomEditModel : public Fmx::Controls::Model::TDataModel

プロパティ

種類 可視性 ソース ユニット
class public
FMX.Edit.pas
FMX.Edit.hpp
FMX.Edit FMX.Edit

説明

表示用コントロールデータ モデルです。

FMX.Edit.TCustomEditModel は FMX.Controls.Model.TDataModel を継承しています。以下の内容はすべて FMX.Controls.Model.TDataModel を参照しています。


表示用コントロールデータ モデルです。

TDataModel は、表示用コントロールデータ モデルの基底クラスです。 下位クラスは、対応する表示用コントロールのプロパティが使用するデータ値を格納される、プロパティを定義します。

TDataModelTMessageSender を拡張しており、これはメッセージ送信機能を提供します。Data モデルは、Receiver(またはプレゼンテーション)の定義、および、Data モデルのデータが変更された際に、この Receiver へのメッセージ送信して、関連する表示用コントロール内に表示される値を更新することができます。Data モデルが Data 値を読み書きした際、Data モデルは、 MM_GETDATA および MM_DATA_CHANGED メッセージをプレゼンテーションに送信します。

TDataModel は、DataSource プロパティを定義しており、ここにはキー/値ペアのコレクションが格納されています。キーは文字列で、値は TValue のインスタンスです。TValue 型は任意の型ののデータを保持および処理することができます。このため、 DataSource コレクションは必要などんなデータを保持することができます。つまり、任意の型のデータを保持するのに、TDataModel は個別に新しいクラスを作成する必要がありません。たとえば、文字列の配列を保持することができ、これは、エディター内に表示される点後のコレクションとして使用できます。このようになります:

type
  TStringArray = TArray<string>;
var
  ArrayList1, ArrayList2: TStringArray;
...
  { Setting/Getting value of array type }
  ArrayList1 := ['Apple', 'ARC', 'Auto', 'Allday', 'Alltime'];
  Edit1.Model.Data['array_value'] := TValue.From<TStringArray>(ArrayList1);
  ...
  if Edit1.Model.Data['array_value'].IsType<TStringArray> then
    ArrayList2 := Edit1.Model.Data['array_value'].AsType<TStringArray>;

データ モデルを作成した際、プレゼンテーション コントロールをコンストラクタに渡さなければなりません。指定されたプレゼンテーション コントロールはモデルを所有します。

関連項目