問題タブ [livebindings]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1477 参照

delphi - クラスの公開されたプロパティに Delphi TEdit (または類似のもの) を接続することはできますか?

私はこの問題を何年も抱えていましたが、今では簡単に解決できるかもしれません。いくつかの TEdit コントロールを含むパネルをレイアウトする必要があります。各コントロールは、公開されたクラスのプロパティを表示し、編集できるようにする必要があります。伝統的に、私はTEdit(またはRaizeまたはDeveloper Expressライブラリからの数値派生物)を使用し、OnKeyPressおよびOnExitイベントを「接続」し、編集テキストとプロパティタイプなどの間で変換します。すべてDelphi 1(その大きな誕生日もうすぐです!)。

最近は RTTI と Live Binding があるので、理想的には、公開された単一のプロパティについて TEdit (または別の同様のコントロール) に通知する方法が必要であり、必要な双方向リンクがすべての配線や変換なしで確立されます。 . もちろん、オブジェクト インスペクターがこの仕事を行いますが、ラベル付きの編集コントロールを使用した、より正式なカスタム レイアウトが必要です。整数、浮動小数点数、文字列を単純に処理するだけで十分であり、フィールド名が私のプロパティ名である TDBEdit のようなものが素晴らしいでしょう。

「Bind Visually」デザイナー (私は XE3 を持っています) を調べましたが、不確かな状況に陥っています。誰でもこれを行う手段を提案できますか? ありがとう。

0 投票する
0 に答える
549 参照

delphi - VCL での TRadioGroup の双方向ライブバインディング

livebindings は初めてで、これまでのところスムーズな旅ではありませんでした。TRadioGroup.ItemIndex を Integer である TObject プロパティにリンクしようとしています。

したがって、オブジェクトの他のプロパティがTEdit、TStringGrid(オブジェクトのリスト)などに正しく双方向にバインドされているため、バインディングリスト/アダプターは問題ないことがわかります.

私が取るべき手順:

  1. だから私は TRadioGroup を削除します
  2. Visual Livebindings で (...) をクリックし、ItemIndex プロパティを「バインド可能」にします。
  3. Radio の ItemIndex と AdapterBindSource の Integer フィールドの間にリンクをドラッグします。

問題: 片道のみです。VLB の矢印はこれを示しています。ラジオは機能しますが、RadioButtons を介してオブジェクトの値を変更することはできません。TObject から RadioButtons を更新するだけです。

だから私は(再び)私はすべきです:

  1. リンクを削除する 新しい BindingExpression を作成する
  2. 方向=双方向
  3. ControlComponent/式: MyRadioGroup/ItemIndex
  4. SourceComponent/Expression : MyAdapterBindSource/MyIntegerField

しかし、その後エラーが発生します:

0 投票する
2 に答える
1375 参照

delphi - LiveBindings で ListBox を選択した後にデータ レコードにアクセスする方法

私は TSQLDataset を持っています。ライブバインディングを使用してリストボックスにバインドしています。リストボックス項目をクリックすると、レコードからデータの他のフィールドにアクセスできるようにしたいのですが、データセットを対応する項目に取得できないため、その方法がわかりません。
IDフィールドを取得して、ライブバインディングを使用して割り当てることSelected.Tagができることはわかっていますが、それを理解することもできませんが、できれば別のSQLQueryを作成して、クエリの結果を返すことができます

SELECT * FROM Dataset WHERE ID=(Tag value)

それはうまくいきますが、ライブバインディングがリストボックスにデータを入力するときに、アイテムタグの値を設定するためにライブバインディングを取得する方法がわかりません。

これを機能させる方法を知っている人はいますか?

0 投票する
1 に答える
778 参照

delphi - Delphi xe 4 で文字列変数へのライブ バインディングを作成できますか

これが私の問題です。ラベル lblAccBalance と、別のユニット sAccBal:String に変数があります。lblAccBalance のキャプションを、ライブ バインディングを使用して他のユニットの変数の値にバインドする方法はありますか? delphi xe4

0 投票する
1 に答える
647 参照

delphi - Delphi XE4 で LiveBinding をクリアする方法

Delphi XE4 で LiveBinding を試しているときに、オブジェクト インスペクタから BindVisually を選択しました。LiveBinding をクリアまたは排除するにはどうすればよいですか?

設計時に編集して LiveBinding を削除しようとすると、削除できません。バインディング ビューアを開くと、ボンディングが設定されていません。デザイナーまたはオブジェクト インスペクターで生計をクリアする規定はありません。

0 投票する
1 に答える
606 参照

string - Delphi で二項式を含む文字列を評価するにはどうすればよいですか?

Delphi XE には、いくつかの複雑な式を次のようなバイナリ式の結果に分解するルーチンがあります。

(1&((1|0)|1)&1)

私のアプリケーションは SQL Server 上にあるので、簡単に SELECT (1&((1|0)|1)&1) As Result を実行でき、SQL Server はロジックを評価して 1 または 0 の結果を返します。

二項式の文字列表現を取得して評価するネイティブな Delphi の方法を見つけることができないようです。

XE に追加された Live Bindings Evaluators を調べましたが、and/or 演算子を使用しようとするとパーサー エラーがスローされるため、これはより数学的なプロセスであると考えられます。

また、いくつかのパーサーも調べましたが、実際に飛び出したものはありませんでした。

では、次のようなことをするにはどうすればよいですか。

iSomeInt := Evaluate('(1&((1|0)|1)&1)');

ところで..式を完全に作り直して、 &|.. の代わりに and/or を使用することができます.

0 投票する
3 に答える
7740 参照

delphi - livebindings CustomFormat で Format を使用する

LiveBinding を使用して、FireMonkey フォームの TEdit に表示する数値をフォーマットしようとしています。

バインディングの CustomFormat で Format メソッドを使用して、小数点以下 2 桁で数値をフォーマットしようとしています。

出力を「ハードコード」できます:

これは機能していますが、使用するフォーマット文字列がわかりません。次のような標準の書式設定文字列を試してみると、

「フォーマットが無効であるか、引数と互換性がありません」という実行時エラーが発生します。

実際、フォーマット文字列に % 記号を含めるたびにエラーが発生するため、Format が異なるタイプの引数を取ると推測していますが、正しいフォーマット文字列が何であるかを示すドキュメントが見つかりません。