VisualWorks SmallTalkでラベルの文字列を積極的に変更する方法
-
15-09-2020 - |
質問
プログラムの実行中に、ApplicationModelのラベルの値を動的に動的に変更しようとしています。 私は試してみました:
(self builder labelAt: #Label4) labelString: 'Dynamic text here'.
.
しかし、LabelStringがエラーが理解されていません。 実行すると:
(self builder labelAt:#Label4)
.
「undefinedObject」を取得します。これは私がラベルオブジェクトを返していないことを明らかに示唆しています。
解決
を試してください
(self builder componentAt: #Label4) widget labelString: 'whatever'
.
または
(self widgetAt: #Label4) labelString: 'whatever'
. 他のヒント
あなたが変更した値のモデルを持っている場合は、モデルにバインドされている読み取り専用InputFieldを使いやすいです。私は変化する価値のためのモデルを持っていると言っていて、一般的に良い考えです。
入力フィールドを読み取り専用および境界線として定義している場合は、通常のテキストラベルとまったく同じように見えます。ユーザーの観点からの唯一の違いは、読み取り専用入力フィールドからテキストを選択してコピーする機能です。これは多くの場合に役立ちます。
その一方で、ラベルは多くの豊かな外観を持つことができます。あなたはそれらのためにテキスト、composedtext、またはイメージを使うことができます。
所属していません StackOverflow