Delphi 10.1 BerlinでLive Bindingsを使ってデータベースとRadioButtonを連結するサンプル

Delphi 10.1 BerlinのFireMonkeyアプリケーションでLive Bindingsを使ってデータベースの1つのフィールドと複数のRadioButtonを連結するサンプルプログラムです。

プロジェクトはこちらからダウンロードできます。

このサンプルプログラムのフォームはこのようになっています。

LiveBindings03

データベースのフィールドとラジオボタンはLive Bindingsで連結しています。

フィールドの値が「1」のときはRadioButton1をチェック
フィールドの値が「2」のときはRadioButton2をチェック
フィールドの値が「3」のときはRadioButton3をチェック
します。

Edit1に入力するとデータベースの値が更新され、ラジオボタンのチェックが更新されます。

LiveBindings02

データベースのフィールドは「Value」はInteger型のフィールドで連結する値を持ちます。
データベースのフィールドは「RadioButton1」「RadioButton2」「RadioButton3」はBoolean型のフィールドで、計算項目です。
「Value」フィールドの値が「1」のときは「RadioButton1」フィールドはTrue、
「Value」フィールドの値が「2」のときは「RadioButton2」フィールドはTrue、
「Value」フィールドの値が「3」のときは「RadioButton3」フィールドはTrue、
になります。

LiveBindings01

procedure TForm1.FDMemTable1CalcFields(DataSet: TDataSet);
begin
  DataSet.FieldByName('RadioButton1').AsBoolean := (DataSet.FieldByName('Value').AsInteger = 1);
  DataSet.FieldByName('RadioButton2').AsBoolean := (DataSet.FieldByName('Value').AsInteger = 2);
  DataSet.FieldByName('RadioButton3').AsBoolean := (DataSet.FieldByName('Value').AsInteger = 3);
end;

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください