如何在visualworks smalltalk中主动更改标签的字符串

如何在visualworks smalltalk中主动更改标签的字符串,smalltalk,visualworks,Smalltalk,Visualworks,我试图在程序运行期间动态更改ApplicationModel中标签的值。 我试过: (self builder labelAt: #Label4) labelString: 'Dynamic text here'. 但得到一个标签串不理解的错误。 当我跑步时: (self builder labelAt:#Label4) 我没有定义对象。这显然表明我没有返回标签对象。试试看 (self builder componentAt: #Label4) widget labelString: 'wh

我试图在程序运行期间动态更改ApplicationModel中标签的值。 我试过:

(self builder labelAt: #Label4) labelString: 'Dynamic text here'.
但得到一个标签串不理解的错误。 当我跑步时:

(self builder labelAt:#Label4)
我没有定义对象。这显然表明我没有返回标签对象。

试试看

(self builder componentAt: #Label4) widget labelString: 'whatever'


如果您有一个用于更改值的模型,那么很容易使用绑定到模型的只读InputField。我敢说,为不断变化的价值建立一个模型通常是个好主意

如果将InputField定义为只读且没有边框,则它将看起来与常规文本标签完全相同。从用户的角度来看,唯一的区别在于能够从只读输入字段中选择和复制文本,这在许多情况下都很有用

另一方面,标签可以有更丰富的外观。您可以为它们使用文本、复合文本或图像

(self widgetAt: #Label4) labelString: 'whatever'