我试图在程序运行期间动态更改 ApplicationModel 中标签的值。我试过了:
(self builder labelAt: #Label4) labelString: 'Dynamic text here'.
但是得到一个 labelString 不理解的错误。当我运行时:
(self builder labelAt:#Label4)
我得到“未定义对象”。这显然表明我没有返回我的 Label 对象。
我试图在程序运行期间动态更改 ApplicationModel 中标签的值。我试过了:
(self builder labelAt: #Label4) labelString: 'Dynamic text here'.
但是得到一个 labelString 不理解的错误。当我运行时:
(self builder labelAt:#Label4)
我得到“未定义对象”。这显然表明我没有返回我的 Label 对象。
尝试
(self builder componentAt: #Label4) widget labelString: 'whatever'
或者
(self widgetAt: #Label4) labelString: 'whatever'
如果您有一个用于更改值的模型,那么使用绑定到您的模型的只读 InputField 非常容易。我敢说,拥有一个改变价值的模型通常是一个好主意。
如果您将 InputField 定义为只读且没有边框,它将看起来与常规文本标签完全一样。从用户的角度来看,唯一的区别在于从只读输入字段中选择和复制文本的能力,这在许多情况下都很有用。
另一方面,标签可以有更丰富的外观。您可以为它们使用 Text、ComposedText 或 Image。