0

SWTUIをJavaのテストモデルにバインドしようとしています。バインディングは機能します。ただし、値はモデルからの値とまったく同じです。したがって、モデルがブール値であり、trueを返す場合、UIウィジェットでは文字通り「true」と表示されますが、これはユーザーに表示したいものではありません。UIウィジェットに入れる前にバインドされた値を確認する方法はありますか?モデルがtrueを返した場合、モデル値がtrueであるかどうかを確認し、ラベルに「正しい」と表示することにします。そうでない場合は、falseの場合は「間違っています」と表示します。

同様に、ラベルがあり、それをアカウントのクレジット残高の値を返すモデルにバインドしたい場合、ラベルに「アカウントにあります」というテキストがすでに含まれている可能性があります。 THE_BOUND_VALUEをラベルに追加し、ラベル全体の値がモデルの値で上書きされないようにします。バインディングの方法は次のとおりです。

IObservableValue tableViewer_myTestObserveSingleSelection = ViewersObservables.observeSingleSelection(tableViewer_myTest);
    IObservableList tableViewer_myTestDataContentObserveDetailList = BeansObservables.observeDetailList(tableViewer_myTestObserveSingleSelection, "DataContent", TestModelData.class);
    tableViewer_DataContent.setInput(tableViewer_myTestDataContentObserveDetailList);

これらのコードはEclipseのwindowsbuilderproから生成されますが、どういうわけか、UIに表示する方法にバインドされた値を変更するために何も使用できません。

助けてくれてありがとう。

4

1 に答える 1

3

Convertersを使用してタイプ間の変換を行うことができます。この例を見てください。

于 2011-06-13T21:46:50.153 に答える